Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Privacy-first, chat-first project manager for vibe coders. Track projects, capture updates, and resume work across local folders, Claude/Codex, and GitHub wi...
Privacy-first, chat-first project manager for vibe coders. Track projects, capture updates, and resume work across local folders, Claude/Codex, and GitHub wi...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Use this when a user is juggling many AI-built projects and needs one simple command surface to: See what is active now. Capture progress and next steps fast. Resume any project in one jump (local/GitHub/chat).
Remote install is disabled by default. Chat transcript indexing is disabled by default. GitHub sync/token usage is disabled by default. Home-directory heuristic discovery is disabled by default. To opt in explicitly: PROJECT_OS_INCLUDE_CHAT_ROOTS=1 enables chat transcript indexing. PROJECT_OS_ENABLE_GITHUB_SYNC=1 enables GitHub username/token integration. PROJECT_OS_ENABLE_HOME_DISCOVERY=1 enables broad home-directory discovery. PROJECT_OS_AUTO_SETUP=1 PROJECT_OS_ALLOW_REMOTE_INSTALL=1 allows remote clone/install if PROJECT_OS_ROOT is missing.
Produce a complete, local-first project inventory that answers: What projects exist right now? Which are active/blocked/stale? What is each project actually about? Where did the user leave off? How can the user jump back in immediately? How can the user quickly edit status/next steps/items without leaving OpenClaw?
Default action for every user message: Interpret the message. Run: scripts/project_router.sh "<user message>". Return the router output directly in plain language. Users should not need to type scripts, Python, paths, or flags. Fallback for power users: Use the short wrapper command: project ... Examples: project, project focus, project today, project inbox "idea: test", project dashboard start Plain-language request mapping: "What am I working on today?" -> activity today "Show my projects" -> grouped project list (Now/Later/Blocked/Done) "Focus list" -> top focus items "Add this idea: ..." -> inbox capture "Next for project-os: ..." -> add next "Mark X blocked" -> set simple status "Start dashboard" -> dashboard start "Resume project X" -> resume pack "Only track A, B, C" -> set tracked scope (activity will only include these) "Mute X" / "Untrack X" / "Show scope" -> scope controls Response style in non-technical mode: Keep responses short and direct. Do not expose technical command details unless user asks. For activity questions, always return Activity Criteria + day sections. If a project name is ambiguous, ask one short clarification question.
Treat an item as a project if it matches any of these: Git repository folder. Non-git code folder with project markers (package.json, pyproject.toml, Cargo.toml, etc). Chat session (Claude/Codex) that does not match an existing project; create a chat-derived project. Claude workspace chats should map to deeper subprojects when session folders indicate a nested workspace path. Reject likely non-project folders in collection roots (docs-only, logs, backups, notes-only folders) unless there is strong code/marker evidence. Reject low-signal chat-only entries as standalone projects unless they contain a useful path hint or meaningful project intent.
Run scripts/bootstrap.sh first. Validate coverage: run python3 -m project_os.cli --db ~/.project_os/openclaw_test.db --config ~/.project_os/openclaw_test_config.json list-projects --limit 200 run python3 -m project_os.cli --db ~/.project_os/openclaw_test.db --config ~/.project_os/openclaw_test_config.json list-sessions --limit 50 run python3 -m project_os.cli --db ~/.project_os/openclaw_test.db --config ~/.project_os/openclaw_test_config.json list-items --status open --limit 80 run python3 -m project_os.cli --db ~/.project_os/openclaw_test.db --config ~/.project_os/openclaw_test_config.json squash-chat-projects If user wants visual mode, run scripts/start_dashboard.sh. If user wants quick resume context, run scripts/write_memory.sh and use ~/.project_os/PROJECT_MEMORY.md.
Run this for a first-time user: scripts/openclaw_smoke_agent.sh scripts/read_smoke_result.sh Confirm: RESULT_STATUS=ok RESULT_DASHBOARD_URL=... RESULT_PORT_8765_LISTENING=yes If project-os repo is not present locally, the skill will fail safely by default and instruct setting PROJECT_OS_ROOT. Remote install is explicit opt-in only.
Dashboard mode: simple visual triage (Focus Today, Now, Blocked, Later, Done) and jump links. Dashboard mode includes: Quick Inbox capture (freeform note -> auto-routed update/next/reminder/idea/blocker) Daily Check-In panel (done + next + blocker) Focus list, stale nudges, weekly snapshot, and server health Dashboard intentionally avoids recommendation-score noise and focuses on plain language: What it is (derived from project files like README/package metadata) Where left off Do next inline editing: set simple status (now/later/blocked/done), set next action, add update/next/reminder/idea/blocker, mark items done/dismissed session resume buttons for both tools (Resume in Claude and Resume in Codex) when session link is valid Memory mode: markdown snapshot for fast resume in any chat. Default recommendation: use both.
Use CLI commands as the primary interface: add-update for what changed. add-next for the immediate next step (also updates project next_action). add-reminder for date/time-based follow-ups. add-idea for backlog thoughts. list-items and set-item-status to triage/close items. Use scripts/project_actions.sh for short aliases around these commands. For activity-window questions ("what did I work on today/yesterday"), run scripts/activity_report.sh --when both or scripts/project_actions.sh activity --when both. Do not guess activity by project name or status; only use timestamp evidence from the report criteria. Activity report excludes archived projects by default (use --include-archived only if user asks). Response contract for activity-window answers: always include Activity Criteria always include Today (...) and/or Yesterday (...) headings include at least one evidence line per listed project (local_commit, github_push, session, or note) if no projects match, explicitly return - none
In OpenClaw, invoke this skill by name: project-os-organizer. For first run setup: project setup (or scripts/easy_mode.sh setup). Default day-to-day: just type plain English in chat and route through project_router.sh. Optional shortcuts use only project .... For one-command local install from this repo, run scripts/install_openclaw_skill.sh. For non-interactive OpenClaw agents, use: scripts/openclaw_smoke.sh for strict CI-style smoke (non-zero exit on failure) scripts/openclaw_smoke_agent.sh for agent-safe smoke (always exits zero, returns RESULT_STATUS) scripts/read_smoke_result.sh to fetch the last smoke result file when command output is flaky scripts/bootstrap.sh --noninteractive (timeout-safe quick mode) scripts/bootstrap.sh --noninteractive-full (full refresh mode) scripts/start_dashboard.sh --detach --restart Smoke commands return machine-readable lines: RESULT_STATUS RESULT_ERROR RESULT_DASHBOARD_URL RESULT_DASHBOARD_PID RESULT_PORT_8765_LISTENING RESULT_CURL_HEAD RESULT_SMOKE_LOG RESULT_DASHBOARD_LOG RESULT_RESULT_FILE For quick editing from chat: scripts/project_actions.sh list --limit 80 scripts/project_actions.sh set-status --project "<name|id>" --status blocked scripts/project_actions.sh set-next --project "<name|id>" --text "next step" scripts/project_actions.sh add-update --project "<name|id>" --text "what changed" scripts/project_actions.sh add-next --project "<name|id>" --text "immediate next step" scripts/project_actions.sh add-reminder --project "<name|id>" --text "follow up" --due 2026-03-01 scripts/project_actions.sh add-blocker --project "<name|id>" --text "what is blocked" scripts/project_actions.sh simple-status --project "<name|id>" --status now scripts/project_actions.sh focus --limit 3 scripts/project_actions.sh stale --days 14 --limit 20 scripts/project_actions.sh weekly --days 7 --limit 12 scripts/project_actions.sh notify --period daily scripts/project_actions.sh inbox --text "freeform note" scripts/project_actions.sh checkin --project "<name|id>" --done "..." --next "..." --blocker "..." scripts/project_actions.sh duplicates --limit 50 scripts/project_actions.sh merge --keep "<id|name>" --drop "<id|name>" scripts/project_actions.sh ask --text "mark project-os blocked" scripts/project_actions.sh set-item --item <id> --status done For "worked on today/yesterday": scripts/project_actions.sh activity --when both For personal scope control: scripts/project_actions.sh scope --set "project-os" "polymarket-trader-v2" scripts/project_actions.sh track --project "project-os" scripts/project_actions.sh mute --project "clawd" scripts/project_actions.sh scope Add --include-archived only on explicit request. Return the output sections Activity Criteria, Today (...), and Yesterday (...) so the user sees exactly how projects were counted.
Local-first only. Do not mutate repositories/servers automatically. Do not invent project state; infer from scans/sessions and expose uncertainty. Prefer broad root coverage to avoid missing nested subfolders. Keep non-git project discovery at root-level by default (include_nested_non_git_projects: false) to avoid noisy submodules. Keep collection discovery strict: include real project subfolders, drop random text-only folders.
references/project-definition.md references/workflow.md
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.