一键导入
overseer
Manage tasks via Overseer codemode MCP. Use when tracking multi-session work, breaking down implementation, or persisting context for handoffs.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Manage tasks via Overseer codemode MCP. Use when tracking multi-session work, breaking down implementation, or persisting context for handoffs.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | overseer |
| description | Manage tasks via Overseer codemode MCP. Use when tracking multi-session work, breaking down implementation, or persisting context for handoffs. |
| license | MIT |
| metadata | {"author":"dmmulroy","version":"1.0.0"} |
Overseer tasks are tickets - structured artifacts with comprehensive context:
Think: "Would someone understand the what, why, and how from this task alone AND what success looks like?"
Never reference task IDs in external artifacts (commits, PRs, docs). Task IDs like task_01JQAZ... become meaningless once tasks complete. Describe the work itself, not the task that tracked it.
| Overseer | TodoWrite | |
|---|---|---|
| Persistence | SQLite database | Session-only |
| Context | Rich (description + context + result) | Basic |
| Hierarchy | 3-level (milestone -> task -> subtask) | Flat |
Use Overseer for persistent work. Use TodoWrite for ephemeral in-session tracking only.
Use Overseer when:
Skip Overseer when:
// Get next ready task with full context (recommended for work sessions)
const task = await tasks.nextReady(milestoneId); // TaskWithContext | null
if (!task) {
console.log("No ready tasks");
return;
}
// Get all ready tasks (for progress overview)
const readyTasks = await tasks.list({ ready: true }); // Task[]
Use nextReady() when starting work - returns TaskWithContext | null (deepest ready leaf with full context chain + inherited learnings).
Use list({ ready: true }) for status/progress checks - returns Task[] without context chain.
// 1. Get next ready task (returns TaskWithContext | null)
const task = await tasks.nextReady();
if (!task) return "No ready tasks";
// 2. Review context (available on TaskWithContext)
console.log(task.context.own); // This task's context
console.log(task.context.parent); // Parent's context (if depth > 0)
console.log(task.context.milestone); // Root milestone context (if depth > 1)
console.log(task.learnings.own); // Learnings attached to this task (bubbled from children)
// 3. Start work (VCS required - creates bookmark, records start commit)
await tasks.start(task.id);
// 4. Implement...
// 5. Complete with learnings (VCS required - commits changes, bubbles learnings to parent)
await tasks.complete(task.id, {
result: "Implemented login endpoint with JWT tokens",
learnings: ["bcrypt rounds should be 12 for production"]
});
// Alternative: Cancel if abandoning (does NOT satisfy blockers)
await tasks.cancel(task.id);
// 6. Archive finished tasks to hide from default list
await tasks.archive(task.id);
See @file references/workflow.md for detailed workflow guidance.
Tasks have progressive context - inherited from ancestors:
const task = await tasks.get(taskId); // Returns TaskWithContext
// task.context.own - this task's context (always present)
// task.context.parent - parent task's context (if depth > 0)
// task.context.milestone - root milestone's context (if depth > 1)
// Task's own learnings (bubbled from completed children)
// task.learnings.own - learnings attached to this task
| Method | Returns | Notes |
|---|---|---|
tasks.get(id) | TaskWithContext | Full context chain + inherited learnings |
tasks.nextReady() | TaskWithContext | null | Deepest ready leaf with full context |
tasks.list() | Task[] | Basic task fields only |
tasks.create() | Task | No context chain |
tasks.start/complete() | Task | No context chain |
Blockers prevent a task from being ready until the blocker completes.
Constraints:
// Add blocker - taskA waits for taskB
await tasks.block(taskA.id, taskB.id);
// Remove blocker
await tasks.unblock(taskA.id, taskB.id);
Three levels: Milestone (depth 0) -> Task (depth 1) -> Subtask (depth 2).
| Level | Name | Purpose | Example |
|---|---|---|---|
| 0 | Milestone | Large initiative | "Add user authentication system" |
| 1 | Task | Significant work item | "Implement JWT middleware" |
| 2 | Subtask | Atomic step | "Add token verification function" |
Choosing the right level:
See @file references/hierarchies.md for detailed guidance.
Complete tasks immediately after implementing AND verifying:
Your result must include explicit verification evidence. See @file references/verification.md.
| Task | File |
|---|---|
| Understanding API | @file references/api.md |
| Implementation workflow | @file references/workflow.md |
| Task decomposition | @file references/hierarchies.md |
| Good/bad examples | @file references/examples.md |
| Verification checklist | @file references/verification.md |
| File | Purpose |
|---|---|
references/api.md | Overseer MCP codemode API types/methods |
references/workflow.md | Start->implement->complete workflow |
references/hierarchies.md | Milestone/task/subtask organization |
references/examples.md | Good/bad context and result examples |
references/verification.md | Verification checklist and process |
Create effective skills for OpenCode agents. Load FIRST before writing any SKILL.md. Provides required format, naming conventions, progressive disclosure patterns, and validation. Use when building, reviewing, or debugging skills.
Proactively suggest diagrams when explaining complex systems. Triggers on diagrams, charts, visualizations, flowcharts, sequence diagrams, architecture diagrams, ER diagrams, state machines, Gantt charts, mindmaps, C4, class diagrams, git graphs. Use when user asks for visual representations of code, systems, processes, data structures, database schemas, workflows, or API flows. Generate Mermaid diagrams in markdown.
Convert markdown planning documents to Overseer tasks via MCP codemode. Use when converting plans, specs, or design docs to trackable task hierarchies.