project-keeper

Dev Tools

Enhances your agent's ability at keeping structured records of user projects including status, goals, architecture, and key development plans in dedicated workspace directories to minimize wasted context and time explaining

Install

openclaw skills install project-keeper

INIT

For this skill to work, create a "projects/" directory in your workspace. Inside will be a directory dedicated to each project you and your user mention and planning to/are work on. How these project files will be structured is explained in the following section

TRIGGER

Whenever a user mentions something about a new project that he is working on or planning to, keep in mind that he'll most likely mention it again. Instead of scrambling memory and past chats to scrape info, use this system

FETCHING INFO

When a project's mentioned, first look if an existing project file is present. The file should have all critical info that would be important in future chats (such as the one you might be having now). The file would include where the project work file is sitting.

STORING INFO

ONBOARDING.md

Once an unmanaged project is mentioned, it is critical that you create its respective project info file and store its mentioned info in a way that saves tokens, time and context while also having the ability to negate the need for a explanation from the user every time they reset the chat. The file would be structured like the following, also in .md format

# Project: OpenClaw-TUI
**Status:** Initialized / Planning
**Type:** Python TUI Client for OpenClaw Gateway
**Location:** `/path/to/project/files`

## 🎯 Objective
Create a high-performance, feature-packed Terminal User Interface (TUI) that acts as a thin client for the OpenClaw Gateway. The goal is to decouple the interface from the host, allowing it to run locally or remotely via Tailscale/Reverse Proxy.

## 🏗️ Architecture
- **Client-Server Model**: 
    - **Server**: OpenClaw Gateway (Host machine) handling LLM, tools, and state.
    - **Client**: Python TUI (Host or Remote machine) handling display and user input.
- **Communication**: 
    - REST API (`requests`) for state/config/invocations.
    - WebSockets (`websockets`) for real-time session streaming.
- **Frontend Framework**: `textual` (TUI).
- **Dependency Management**: `uv`.

## 🛠️ Key Features planned
- **Multi-Machine Support**: Configurable Gateway URL (localhost vs Tailscale IP).
- **Audio Integration**: Local playback of TTS audio generated by the remote Gateway.
- **Advanced Dashboards**: Specialized views (e.g., Market Tracking, Sequence Management) that exceed default WebUI capabilities.
- **Authentication**: Secure storage and transmission of `gateway_token`.

## 📋 Development Roadmap
1. [x] Environment Setup (`uv` venv, `textual`, `requests`, `websockets`).
2. [ ] **Core Client**: Implementation of a `GatewayClient` class to wrap API calls.
3. [ ] **Auth Flow**: Configuration management for URL and Token.
4. [ ] **TUI Shell**: Basic layout with a command input and a scrollable message view.
5. [ ] **Audio Layer**: Integration of local audio players for remote TTS streams.
6. [ ] **Feature Modules**: Implementation of specific dashboards (Finance, etc.).

## ⚠️ Critical Notes
- **Do not** bundle the OpenClaw engine into the TUI; it must remain a client.
- Ensure all network calls have appropriate timeouts and error handling for remote connections.
- Use `uv` for all environment updates to maintain consistency.

This file isn't the only file you'll create, but it's the most vital of all. It stores the core principles and main aims of the project along with the plans for it. Think of this file as the onboarding and documentation of work for another agent (most probably your future self) who knows NOTHING about this project. Furthermore, try to extract info from the user about the details and focuses of this project if not mentioned and include them in their fitting sections. DO NOT copy the filled in data directly from this template, think of this as an example submission of a form you're filling out.