Add 3 new skills (basecamp, brainstorming, plan-writing) and update agent model
- basecamp: Basecamp project management via MCP (todos, kanban, projects) - brainstorming: General-purpose ideation with Anytype save - plan-writing: Project planning with templates (kickoff, stakeholders, tasks, risks) - Update agent model from GPT-4o to minimax-m2.1-free - Update README with new skills
This commit is contained in:
17
README.md
17
README.md
@@ -23,7 +23,7 @@ This repository serves as a **personal AI operating system** - a collection of s
|
|||||||
│ └── profile.md # Work style, PARA areas, preferences
|
│ └── profile.md # Work style, PARA areas, preferences
|
||||||
├── command/ # Custom command definitions
|
├── command/ # Custom command definitions
|
||||||
│ └── reflection.md
|
│ └── reflection.md
|
||||||
├── skill/ # Opencode Agent Skills (8+ skills)
|
├── skill/ # Opencode Agent Skills (11+ skills)
|
||||||
│ ├── task-management/ # PARA-based productivity
|
│ ├── task-management/ # PARA-based productivity
|
||||||
│ ├── skill-creator/ # Meta-skill for creating skills
|
│ ├── skill-creator/ # Meta-skill for creating skills
|
||||||
│ ├── reflection/ # Conversation analysis
|
│ ├── reflection/ # Conversation analysis
|
||||||
@@ -31,7 +31,10 @@ This repository serves as a **personal AI operating system** - a collection of s
|
|||||||
│ ├── calendar-scheduling/ # Time management
|
│ ├── calendar-scheduling/ # Time management
|
||||||
│ ├── mem0-memory/ # Persistent memory
|
│ ├── mem0-memory/ # Persistent memory
|
||||||
│ ├── research/ # Investigation workflows
|
│ ├── research/ # Investigation workflows
|
||||||
│ └── knowledge-management/ # Note capture & organization
|
│ ├── knowledge-management/ # Note capture & organization
|
||||||
|
│ ├── basecamp/ # Basecamp project management
|
||||||
|
│ ├── brainstorming/ # Ideation & strategic thinking
|
||||||
|
│ └── plan-writing/ # Project planning templates
|
||||||
├── scripts/ # Repository utility scripts
|
├── scripts/ # Repository utility scripts
|
||||||
│ └── test-skill.sh # Test skills without deploying
|
│ └── test-skill.sh # Test skills without deploying
|
||||||
├── .beads/ # Issue tracking database
|
├── .beads/ # Issue tracking database
|
||||||
@@ -165,8 +168,11 @@ The test script creates a temporary config directory with symlinks to this repo'
|
|||||||
| **communications** | Email drafts, follow-ups, message management | ✅ Active |
|
| **communications** | Email drafts, follow-ups, message management | ✅ Active |
|
||||||
| **calendar-scheduling** | Time blocking, meeting management | ✅ Active |
|
| **calendar-scheduling** | Time blocking, meeting management | ✅ Active |
|
||||||
| **mem0-memory** | Persistent memory storage and retrieval | ✅ Active |
|
| **mem0-memory** | Persistent memory storage and retrieval | ✅ Active |
|
||||||
| **research** | Investigation workflows, source management | 🚧 Stub |
|
| **research** | Investigation workflows, source management | ✅ Active |
|
||||||
| **knowledge-management** | Note capture, knowledge organization | 🚧 Stub |
|
| **knowledge-management** | Note capture, knowledge organization | ✅ Active |
|
||||||
|
| **basecamp** | Basecamp project & todo management via MCP | ✅ Active |
|
||||||
|
| **brainstorming** | General-purpose ideation with Anytype save | ✅ Active |
|
||||||
|
| **plan-writing** | Project plans with templates (kickoff, tasks, risks) | ✅ Active |
|
||||||
|
|
||||||
## 🤖 AI Agents
|
## 🤖 AI Agents
|
||||||
|
|
||||||
@@ -248,6 +254,9 @@ See `AGENTS.md` for complete developer documentation.
|
|||||||
- **task-management/** - Full implementation with Anytype integration
|
- **task-management/** - Full implementation with Anytype integration
|
||||||
- **skill-creator/** - Meta-skill with bundled resources
|
- **skill-creator/** - Meta-skill with bundled resources
|
||||||
- **reflection/** - Conversation analysis with rating system
|
- **reflection/** - Conversation analysis with rating system
|
||||||
|
- **basecamp/** - MCP server integration with multiple tool categories
|
||||||
|
- **brainstorming/** - Framework-based ideation with Anytype object creation
|
||||||
|
- **plan-writing/** - Template-driven document generation
|
||||||
|
|
||||||
## 🔧 Customization
|
## 🔧 Customization
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
"chiron": {
|
"chiron": {
|
||||||
"description": "Personal AI assistant (Plan Mode). Read-only analysis, planning, and guidance.",
|
"description": "Personal AI assistant (Plan Mode). Read-only analysis, planning, and guidance.",
|
||||||
"mode": "primary",
|
"mode": "primary",
|
||||||
"model": "anthropic/claude-sonnet-4-5",
|
"model": "opencode/minimax-m2.1-free",
|
||||||
"prompt": "{file:./prompts/chiron.txt}",
|
"prompt": "{file:./prompts/chiron.txt}",
|
||||||
"permission": {
|
"permission": {
|
||||||
"read": {
|
"read": {
|
||||||
@@ -28,7 +28,7 @@
|
|||||||
"chiron-forge": {
|
"chiron-forge": {
|
||||||
"description": "Personal AI assistant (Worker Mode). Full write access with safety prompts.",
|
"description": "Personal AI assistant (Worker Mode). Full write access with safety prompts.",
|
||||||
"mode": "primary",
|
"mode": "primary",
|
||||||
"model": "anthropic/claude-sonnet-4-5",
|
"model": "opencode/minimax-m2.1-free",
|
||||||
"prompt": "{file:./prompts/chiron-forge.txt}",
|
"prompt": "{file:./prompts/chiron-forge.txt}",
|
||||||
"permission": {
|
"permission": {
|
||||||
"read": {
|
"read": {
|
||||||
|
|||||||
262
skill/basecamp/SKILL.md
Normal file
262
skill/basecamp/SKILL.md
Normal file
@@ -0,0 +1,262 @@
|
|||||||
|
---
|
||||||
|
name: basecamp
|
||||||
|
description: "Manage work projects in Basecamp via MCP. Use when: (1) creating or viewing Basecamp projects, (2) managing todos or todo lists, (3) working with card tables (kanban boards), (4) searching Basecamp content, (5) syncing project plans to Basecamp. Triggers: basecamp, create todos, show my projects, card table, move card, basecamp search, sync to basecamp, what's in basecamp."
|
||||||
|
compatibility: opencode
|
||||||
|
---
|
||||||
|
|
||||||
|
# Basecamp
|
||||||
|
|
||||||
|
Manage work projects in Basecamp via MCP server. Provides workflows for project overview, todo management, kanban boards, and syncing from plan-writing skill.
|
||||||
|
|
||||||
|
## Quick Reference
|
||||||
|
|
||||||
|
| Action | Command Pattern |
|
||||||
|
| --------------- | -------------------------------------- |
|
||||||
|
| List projects | "Show my Basecamp projects" |
|
||||||
|
| View project | "What's in [project name]?" |
|
||||||
|
| Create todos | "Add todos to [project]" |
|
||||||
|
| View card table | "Show kanban for [project]" |
|
||||||
|
| Move card | "Move [card] to [column]" |
|
||||||
|
| Search | "Search Basecamp for [query]" |
|
||||||
|
| Sync plan | "Create Basecamp todos from this plan" |
|
||||||
|
|
||||||
|
## Core Workflows
|
||||||
|
|
||||||
|
### 1. Project Overview
|
||||||
|
|
||||||
|
List and explore projects:
|
||||||
|
|
||||||
|
```
|
||||||
|
1. get_projects → list all projects
|
||||||
|
2. Present summary: name, last activity
|
||||||
|
3. User selects project
|
||||||
|
4. get_project(id) → show dock items (todosets, card tables, message boards)
|
||||||
|
```
|
||||||
|
|
||||||
|
**Example output:**
|
||||||
|
|
||||||
|
```
|
||||||
|
Your Basecamp Projects:
|
||||||
|
1. Q2 Training Program (last activity: 2 hours ago)
|
||||||
|
2. Website Redesign (last activity: yesterday)
|
||||||
|
3. Product Launch (last activity: 3 days ago)
|
||||||
|
|
||||||
|
Which project would you like to explore?
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Todo Management
|
||||||
|
|
||||||
|
**View todos:**
|
||||||
|
|
||||||
|
```
|
||||||
|
1. get_project(id) → find todoset from dock
|
||||||
|
2. get_todolists(project_id) → list all todo lists
|
||||||
|
3. get_todos(project_id, todolist_id) → show todos with status
|
||||||
|
```
|
||||||
|
|
||||||
|
**Create todos:**
|
||||||
|
|
||||||
|
```
|
||||||
|
1. Identify target project and todo list
|
||||||
|
2. For each todo:
|
||||||
|
create_todo(
|
||||||
|
project_id,
|
||||||
|
todolist_id,
|
||||||
|
content,
|
||||||
|
due_on?, # YYYY-MM-DD format
|
||||||
|
assignee_ids?, # array of person IDs
|
||||||
|
notify? # boolean
|
||||||
|
)
|
||||||
|
3. Confirm creation with links
|
||||||
|
```
|
||||||
|
|
||||||
|
**Complete/update todos:**
|
||||||
|
|
||||||
|
```
|
||||||
|
- complete_todo(project_id, todo_id) → mark done
|
||||||
|
- uncomplete_todo(project_id, todo_id) → reopen
|
||||||
|
- update_todo(project_id, todo_id, content?, due_on?, assignee_ids?)
|
||||||
|
- delete_todo(project_id, todo_id) → remove
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. Card Table (Kanban) Management
|
||||||
|
|
||||||
|
**View board:**
|
||||||
|
|
||||||
|
```
|
||||||
|
1. get_card_table(project_id) → get card table details
|
||||||
|
2. get_columns(project_id, card_table_id) → list columns
|
||||||
|
3. For each column: get_cards(project_id, column_id)
|
||||||
|
4. Present as kanban view
|
||||||
|
```
|
||||||
|
|
||||||
|
**Example output:**
|
||||||
|
|
||||||
|
```
|
||||||
|
Card Table: Development Pipeline
|
||||||
|
|
||||||
|
| Backlog (3) | In Progress (2) | Review (1) | Done (5) |
|
||||||
|
|-------------|-----------------|------------|----------|
|
||||||
|
| Feature A | Feature B | Bug fix | ... |
|
||||||
|
| Feature C | Feature D | | |
|
||||||
|
| Refactor | | | |
|
||||||
|
```
|
||||||
|
|
||||||
|
**Manage columns:**
|
||||||
|
|
||||||
|
```
|
||||||
|
- create_column(project_id, card_table_id, title)
|
||||||
|
- update_column(project_id, column_id, title) → rename
|
||||||
|
- move_column(project_id, card_table_id, column_id, position)
|
||||||
|
- update_column_color(project_id, column_id, color)
|
||||||
|
- put_column_on_hold(project_id, column_id) → freeze work
|
||||||
|
- remove_column_hold(project_id, column_id) → unfreeze
|
||||||
|
```
|
||||||
|
|
||||||
|
**Manage cards:**
|
||||||
|
|
||||||
|
```
|
||||||
|
- create_card(project_id, column_id, title, content?, due_on?, notify?)
|
||||||
|
- update_card(project_id, card_id, title?, content?, due_on?, assignee_ids?)
|
||||||
|
- move_card(project_id, card_id, column_id) → move to different column
|
||||||
|
- complete_card(project_id, card_id)
|
||||||
|
- uncomplete_card(project_id, card_id)
|
||||||
|
```
|
||||||
|
|
||||||
|
**Card steps (subtasks):**
|
||||||
|
|
||||||
|
```
|
||||||
|
- get_card_steps(project_id, card_id) → list subtasks
|
||||||
|
- create_card_step(project_id, card_id, title, due_on?, assignee_ids?)
|
||||||
|
- complete_card_step(project_id, step_id)
|
||||||
|
- update_card_step(project_id, step_id, title?, due_on?, assignee_ids?)
|
||||||
|
- delete_card_step(project_id, step_id)
|
||||||
|
```
|
||||||
|
|
||||||
|
### 4. Search
|
||||||
|
|
||||||
|
```
|
||||||
|
search_basecamp(query, project_id?)
|
||||||
|
- Omit project_id → search all projects
|
||||||
|
- Include project_id → scope to specific project
|
||||||
|
```
|
||||||
|
|
||||||
|
Results include todos, messages, and other content matching the query.
|
||||||
|
|
||||||
|
### 5. Sync from Plan-Writing
|
||||||
|
|
||||||
|
When user has a project plan from plan-writing skill:
|
||||||
|
|
||||||
|
```
|
||||||
|
1. Parse todo-structure.md or tasks.md for task hierarchy
|
||||||
|
2. Ask: "Which Basecamp project should I add these to?"
|
||||||
|
- List existing projects via get_projects
|
||||||
|
- Note: New projects must be created manually in Basecamp
|
||||||
|
3. Ask: "Use todo lists or card table?"
|
||||||
|
4. If todo lists:
|
||||||
|
- Create todo list per phase/milestone if needed
|
||||||
|
- Create todos with due dates and assignees
|
||||||
|
5. If card table:
|
||||||
|
- Create columns for phases/statuses
|
||||||
|
- Create cards from tasks
|
||||||
|
- Add card steps for subtasks
|
||||||
|
6. Confirm: "Created X todos/cards in [project]. View in Basecamp."
|
||||||
|
```
|
||||||
|
|
||||||
|
### 6. Status Check
|
||||||
|
|
||||||
|
```
|
||||||
|
User: "What's the status of [project]?"
|
||||||
|
|
||||||
|
1. get_project(id)
|
||||||
|
2. For each todo list: get_todos, count complete/incomplete
|
||||||
|
3. If card table exists: get columns and card counts
|
||||||
|
4. Calculate summary:
|
||||||
|
- X todos complete, Y incomplete, Z overdue
|
||||||
|
- Card distribution across columns
|
||||||
|
5. Highlight: overdue items, blocked items
|
||||||
|
```
|
||||||
|
|
||||||
|
**Example output:**
|
||||||
|
|
||||||
|
```
|
||||||
|
Project: Q2 Training Program
|
||||||
|
|
||||||
|
Todos: 12/20 complete (60%)
|
||||||
|
- 3 overdue items
|
||||||
|
- 5 due this week
|
||||||
|
|
||||||
|
Card Table: Development
|
||||||
|
| Backlog | In Progress | Review | Done |
|
||||||
|
| 3 | 2 | 1 | 8 |
|
||||||
|
|
||||||
|
Attention needed:
|
||||||
|
- "Create training materials" (overdue by 2 days)
|
||||||
|
- "Review curriculum" (due tomorrow)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Tool Categories
|
||||||
|
|
||||||
|
For complete tool reference with parameters, see [references/mcp-tools.md](references/mcp-tools.md).
|
||||||
|
|
||||||
|
| Category | Key Tools |
|
||||||
|
| ---------- | -------------------------------------------------------------- |
|
||||||
|
| Projects | get_projects, get_project |
|
||||||
|
| Todos | get_todolists, get_todos, create_todo, complete_todo |
|
||||||
|
| Cards | get_card_table, get_columns, get_cards, create_card, move_card |
|
||||||
|
| Card Steps | get_card_steps, create_card_step, complete_card_step |
|
||||||
|
| Search | search_basecamp |
|
||||||
|
| Comments | get_comments, create_comment |
|
||||||
|
| Documents | get_documents, create_document, update_document |
|
||||||
|
|
||||||
|
## Limitations
|
||||||
|
|
||||||
|
- **No create_project tool**: Projects must be created manually in Basecamp UI
|
||||||
|
- **Work projects only**: This skill is for professional/team projects
|
||||||
|
- **Pagination handled**: MCP server handles pagination transparently
|
||||||
|
|
||||||
|
## Integration with Other Skills
|
||||||
|
|
||||||
|
| From Skill | To Basecamp |
|
||||||
|
| --------------- | ------------------------------------------------- |
|
||||||
|
| brainstorming | Save decision → reference in project docs |
|
||||||
|
| plan-writing | todo-structure.md → Basecamp todos or cards |
|
||||||
|
| task-management | Anytype tasks ↔ Basecamp todos (manual reference) |
|
||||||
|
|
||||||
|
## Common Patterns
|
||||||
|
|
||||||
|
### Create todos from a list
|
||||||
|
|
||||||
|
```
|
||||||
|
User provides list:
|
||||||
|
- Task 1 (due Friday)
|
||||||
|
- Task 2 (due next week)
|
||||||
|
- Task 3
|
||||||
|
|
||||||
|
1. Identify or confirm project and todo list
|
||||||
|
2. Parse due dates (Friday → YYYY-MM-DD)
|
||||||
|
3. Create each todo via create_todo
|
||||||
|
4. Report: "Created 3 todos in [list name]"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Move cards through workflow
|
||||||
|
|
||||||
|
```
|
||||||
|
User: "Move Feature A to In Progress"
|
||||||
|
|
||||||
|
1. search_basecamp("Feature A") or get_cards to find card_id
|
||||||
|
2. get_columns to find target column_id
|
||||||
|
3. move_card(project_id, card_id, column_id)
|
||||||
|
4. Confirm: "Moved 'Feature A' to 'In Progress'"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Add subtasks to a card
|
||||||
|
|
||||||
|
```
|
||||||
|
User: "Add subtasks to the Feature B card"
|
||||||
|
|
||||||
|
1. Find card via search or get_cards
|
||||||
|
2. For each subtask:
|
||||||
|
create_card_step(project_id, card_id, title)
|
||||||
|
3. Report: "Added X steps to 'Feature B'"
|
||||||
|
```
|
||||||
198
skill/basecamp/references/mcp-tools.md
Normal file
198
skill/basecamp/references/mcp-tools.md
Normal file
@@ -0,0 +1,198 @@
|
|||||||
|
# Basecamp MCP Tools Reference
|
||||||
|
|
||||||
|
Complete reference for all 46 available Basecamp MCP tools.
|
||||||
|
|
||||||
|
## Projects
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_projects` | none | List of all projects with id, name, description |
|
||||||
|
| `get_project` | project_id | Project details including dock (todosets, card tables, etc.) |
|
||||||
|
|
||||||
|
## Todo Lists
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_todolists` | project_id | All todo lists in project |
|
||||||
|
|
||||||
|
## Todos
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_todos` | project_id, todolist_id | All todos (pagination handled) |
|
||||||
|
| `create_todo` | project_id, todolist_id, content, due_on?, assignee_ids?, notify? | Created todo |
|
||||||
|
| `update_todo` | project_id, todo_id, content?, due_on?, assignee_ids? | Updated todo |
|
||||||
|
| `delete_todo` | project_id, todo_id | Success confirmation |
|
||||||
|
| `complete_todo` | project_id, todo_id | Completed todo |
|
||||||
|
| `uncomplete_todo` | project_id, todo_id | Reopened todo |
|
||||||
|
|
||||||
|
### Todo Parameters
|
||||||
|
|
||||||
|
- `content`: String - The todo text
|
||||||
|
- `due_on`: String - Date in YYYY-MM-DD format
|
||||||
|
- `assignee_ids`: Array of integers - Person IDs to assign
|
||||||
|
- `notify`: Boolean - Whether to notify assignees
|
||||||
|
|
||||||
|
## Card Tables
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_card_tables` | project_id | All card tables in project |
|
||||||
|
| `get_card_table` | project_id | Primary card table details |
|
||||||
|
|
||||||
|
## Columns
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_columns` | project_id, card_table_id | All columns in card table |
|
||||||
|
| `get_column` | project_id, column_id | Column details |
|
||||||
|
| `create_column` | project_id, card_table_id, title | New column |
|
||||||
|
| `update_column` | project_id, column_id, title | Updated column |
|
||||||
|
| `move_column` | project_id, card_table_id, column_id, position | Moved column |
|
||||||
|
| `update_column_color` | project_id, column_id, color | Updated color |
|
||||||
|
| `put_column_on_hold` | project_id, column_id | Column frozen |
|
||||||
|
| `remove_column_hold` | project_id, column_id | Column unfrozen |
|
||||||
|
| `watch_column` | project_id, column_id | Subscribed to notifications |
|
||||||
|
| `unwatch_column` | project_id, column_id | Unsubscribed |
|
||||||
|
|
||||||
|
### Column Colors
|
||||||
|
|
||||||
|
Available colors for `update_column_color`:
|
||||||
|
- white, grey, pink, red, orange, yellow, green, teal, blue, purple
|
||||||
|
|
||||||
|
## Cards
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_cards` | project_id, column_id | All cards in column |
|
||||||
|
| `get_card` | project_id, card_id | Card details |
|
||||||
|
| `create_card` | project_id, column_id, title, content?, due_on?, notify? | New card |
|
||||||
|
| `update_card` | project_id, card_id, title?, content?, due_on?, assignee_ids? | Updated card |
|
||||||
|
| `move_card` | project_id, card_id, column_id | Card moved to column |
|
||||||
|
| `complete_card` | project_id, card_id | Card marked complete |
|
||||||
|
| `uncomplete_card` | project_id, card_id | Card reopened |
|
||||||
|
|
||||||
|
### Card Parameters
|
||||||
|
|
||||||
|
- `title`: String - Card title
|
||||||
|
- `content`: String - Card description/body (supports HTML)
|
||||||
|
- `due_on`: String - Date in YYYY-MM-DD format
|
||||||
|
- `assignee_ids`: Array of integers - Person IDs
|
||||||
|
- `notify`: Boolean - Notify assignees on creation
|
||||||
|
|
||||||
|
## Card Steps (Subtasks)
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_card_steps` | project_id, card_id | All steps on card |
|
||||||
|
| `create_card_step` | project_id, card_id, title, due_on?, assignee_ids? | New step |
|
||||||
|
| `get_card_step` | project_id, step_id | Step details |
|
||||||
|
| `update_card_step` | project_id, step_id, title?, due_on?, assignee_ids? | Updated step |
|
||||||
|
| `delete_card_step` | project_id, step_id | Step deleted |
|
||||||
|
| `complete_card_step` | project_id, step_id | Step completed |
|
||||||
|
| `uncomplete_card_step` | project_id, step_id | Step reopened |
|
||||||
|
|
||||||
|
## Search
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `search_basecamp` | query, project_id? | Matching todos, messages, etc. |
|
||||||
|
|
||||||
|
- Omit `project_id` for global search across all projects
|
||||||
|
- Include `project_id` to scope search to specific project
|
||||||
|
|
||||||
|
## Communication
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_campfire_lines` | project_id, campfire_id | Recent chat messages |
|
||||||
|
| `get_comments` | project_id, recording_id | Comments on any item |
|
||||||
|
| `create_comment` | project_id, recording_id, content | New comment |
|
||||||
|
|
||||||
|
### Comment Parameters
|
||||||
|
|
||||||
|
- `recording_id`: The ID of the item (todo, card, document, etc.)
|
||||||
|
- `content`: String - Comment text (supports HTML)
|
||||||
|
|
||||||
|
## Daily Check-ins
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_daily_check_ins` | project_id, page? | Check-in questions |
|
||||||
|
| `get_question_answers` | project_id, question_id, page? | Answers to question |
|
||||||
|
|
||||||
|
## Documents
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_documents` | project_id, vault_id | Documents in vault |
|
||||||
|
| `get_document` | project_id, document_id | Document content |
|
||||||
|
| `create_document` | project_id, vault_id, title, content, status? | New document |
|
||||||
|
| `update_document` | project_id, document_id, title?, content? | Updated document |
|
||||||
|
| `trash_document` | project_id, document_id | Document trashed |
|
||||||
|
|
||||||
|
### Document Parameters
|
||||||
|
|
||||||
|
- `vault_id`: Found in project dock as the docs/files container
|
||||||
|
- `content`: String - Document body (supports HTML)
|
||||||
|
- `status`: "active" or "archived"
|
||||||
|
|
||||||
|
## Attachments
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `create_attachment` | file_path, name, content_type? | Uploaded attachment |
|
||||||
|
|
||||||
|
## Events
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_events` | project_id, recording_id | Activity events on item |
|
||||||
|
|
||||||
|
## Webhooks
|
||||||
|
|
||||||
|
| Tool | Parameters | Returns |
|
||||||
|
|------|------------|---------|
|
||||||
|
| `get_webhooks` | project_id | Project webhooks |
|
||||||
|
| `create_webhook` | project_id, payload_url, types? | New webhook |
|
||||||
|
| `delete_webhook` | project_id, webhook_id | Webhook deleted |
|
||||||
|
|
||||||
|
### Webhook Types
|
||||||
|
|
||||||
|
Available types for `create_webhook`:
|
||||||
|
- Comment, Document, GoogleDocument, Message, Question::Answer
|
||||||
|
- Schedule::Entry, Todo, Todolist, Upload, Vault, Card, CardTable::Column
|
||||||
|
|
||||||
|
## Common Patterns
|
||||||
|
|
||||||
|
### Find project by name
|
||||||
|
|
||||||
|
```
|
||||||
|
1. get_projects → list all
|
||||||
|
2. Match name (case-insensitive partial match)
|
||||||
|
3. Return project_id
|
||||||
|
```
|
||||||
|
|
||||||
|
### Find todoset ID for a project
|
||||||
|
|
||||||
|
```
|
||||||
|
1. get_project(project_id)
|
||||||
|
2. Look in dock array for item with name "todoset"
|
||||||
|
3. Extract id from dock item URL
|
||||||
|
```
|
||||||
|
|
||||||
|
### Find card table ID
|
||||||
|
|
||||||
|
```
|
||||||
|
1. get_project(project_id)
|
||||||
|
2. Look in dock for "kanban_board" or use get_card_tables
|
||||||
|
3. Extract card_table_id
|
||||||
|
```
|
||||||
|
|
||||||
|
### Get all todos across all lists
|
||||||
|
|
||||||
|
```
|
||||||
|
1. get_todolists(project_id)
|
||||||
|
2. For each todolist: get_todos(project_id, todolist_id)
|
||||||
|
3. Aggregate results
|
||||||
|
```
|
||||||
188
skill/brainstorming/SKILL.md
Normal file
188
skill/brainstorming/SKILL.md
Normal file
@@ -0,0 +1,188 @@
|
|||||||
|
---
|
||||||
|
name: brainstorming
|
||||||
|
description: "General-purpose ideation and strategic thinking. Use when: (1) clarifying thoughts on any topic, (2) exploring options and trade-offs, (3) building strategies or plans, (4) making decisions with multiple factors, (5) thinking through problems. Triggers: brainstorm, think through, explore options, clarify, what are my options, help me decide, strategy for, how should I approach."
|
||||||
|
compatibility: opencode
|
||||||
|
---
|
||||||
|
|
||||||
|
# Brainstorming
|
||||||
|
|
||||||
|
General-purpose ideation for any domain: business decisions, personal projects, creative work, strategic planning, problem-solving. Not tied to software development.
|
||||||
|
|
||||||
|
## Process
|
||||||
|
|
||||||
|
### 1. Understand Context
|
||||||
|
|
||||||
|
Start by understanding the situation:
|
||||||
|
- What's the situation? What triggered this thinking?
|
||||||
|
- What's the current state vs desired state?
|
||||||
|
|
||||||
|
**Ask one question at a time.** Prefer multiple choice when options are clear.
|
||||||
|
|
||||||
|
### 2. Clarify the Outcome
|
||||||
|
|
||||||
|
Before exploring solutions, clarify what success looks like:
|
||||||
|
- What would a good outcome enable?
|
||||||
|
- What would you be able to do that you can't now?
|
||||||
|
- Are there constraints on what "good" means?
|
||||||
|
|
||||||
|
### 3. Explore Constraints
|
||||||
|
|
||||||
|
Map the boundaries before generating options:
|
||||||
|
- **Time**: Deadlines, urgency, available hours
|
||||||
|
- **Resources**: Budget, people, skills, tools
|
||||||
|
- **External**: Dependencies, stakeholders, regulations
|
||||||
|
- **Preferences**: Non-negotiables vs nice-to-haves
|
||||||
|
|
||||||
|
### 4. Generate Options
|
||||||
|
|
||||||
|
Present 2-3 distinct approaches with trade-offs:
|
||||||
|
|
||||||
|
```
|
||||||
|
**Option A: [Name]**
|
||||||
|
- Approach: [Brief description]
|
||||||
|
- Pros: [Key advantages]
|
||||||
|
- Cons: [Key disadvantages]
|
||||||
|
- Best if: [When this option makes sense]
|
||||||
|
|
||||||
|
**Option B: [Name]**
|
||||||
|
...
|
||||||
|
|
||||||
|
**My recommendation**: Option [X] because [reasoning].
|
||||||
|
```
|
||||||
|
|
||||||
|
Lead with your recommendation but present alternatives fairly.
|
||||||
|
|
||||||
|
### 5. Validate Incrementally
|
||||||
|
|
||||||
|
Present thinking in 200-300 word sections. After each section, check:
|
||||||
|
- "Does this capture it correctly?"
|
||||||
|
- "Anything I'm missing?"
|
||||||
|
- "Should we go deeper on any aspect?"
|
||||||
|
|
||||||
|
Be ready to backtrack and clarify. Brainstorming is non-linear.
|
||||||
|
|
||||||
|
### 6. Capture Decision (Optional)
|
||||||
|
|
||||||
|
After reaching clarity, offer:
|
||||||
|
|
||||||
|
> "Would you like me to save this as an Anytype Brainstorm object for reference?"
|
||||||
|
|
||||||
|
If yes, use the Anytype MCP to create a Brainstorm object:
|
||||||
|
|
||||||
|
```
|
||||||
|
Anytype_API-create-object
|
||||||
|
space_id: CHIRON_SPACE_ID
|
||||||
|
type_key: "brainstorm_v_2"
|
||||||
|
name: "<topic>"
|
||||||
|
body: "<full brainstorm content in markdown>"
|
||||||
|
icon: { format: "emoji", emoji: "💭" }
|
||||||
|
properties: [
|
||||||
|
{ key: "topic", text: "<short title>" },
|
||||||
|
{ key: "context", text: "<situation and trigger>" },
|
||||||
|
{ key: "outcome", text: "<what success looks like>" },
|
||||||
|
{ key: "constraints", text: "<time, resources, boundaries>" },
|
||||||
|
{ key: "options", text: "<options considered>" },
|
||||||
|
{ key: "decision", text: "<final choice>" },
|
||||||
|
{ key: "rationale", text: "<reasoning behind decision>" },
|
||||||
|
{ key: "next_steps", text: "<action items>" },
|
||||||
|
{ key: "framework", select: "<framework_tag_id>" },
|
||||||
|
{ key: "status", select: "draft" }
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
|
**Chiron Space ID**: `bafyreie5sfq7pjfuq56hxsybos545bi4tok3kx7nab3vnb4tnt4i3575p4.yu20gbnjlbxv`
|
||||||
|
|
||||||
|
**Framework Tag IDs**:
|
||||||
|
- `bafyreiatkdbwq53shngaje6wuw752wxnwqlk3uhy6nicamdr56jpvji34i` - None
|
||||||
|
- `bafyreiaizrndgxmzbbzo6lurkgi7fc6evemoc5tivswrdu57ngkizy4b3u` - Pros/Cons
|
||||||
|
- `bafyreiaym5zkajnsrklivpjkizkuyhy3v5fzo62aaeobdlqzhq47clv6lm` - SWOT
|
||||||
|
- `bafyreihgfpsjeyuu7p46ejzd5jce5kmgfsuxy7r5kl4fqdhuq7jqoggtgq` - 5 Whys
|
||||||
|
- `bafyreieublfraypplrr5mmnksnytksv4iyh7frspyn64gixaodwmnhmosu` - How-Now-Wow
|
||||||
|
- `bafyreieyz6xjpt3zxad7h643m24oloajcae3ocnma3ttqfqykmggrsksk4` - Starbursting
|
||||||
|
- `bafyreigokn5xgdosd4cihehl3tqfsd25mwdaapuhopjgn62tkpvpwn4tmy` - Constraint Mapping
|
||||||
|
|
||||||
|
**Status Tag IDs**:
|
||||||
|
- `bafyreig5um57baws2dnntaxsi4smxtrzftpe57a7wyhfextvcq56kdkllq` - Draft
|
||||||
|
- `bafyreiffiinadpa2fwxw3iylj7pph3yzbnhe63dcyiwr4x24ne4jsgi24` - Final
|
||||||
|
- `bafyreihk6dlpwh3nljrxcqqe3v6tl52bxuvmx3rcgyzyom6yjmtdegu4ja` - Archived
|
||||||
|
|
||||||
|
**Optional**: Link to related objects using `linked_projects` or `linked_tasks` properties with object IDs.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Template Setup
|
||||||
|
|
||||||
|
For a better editing experience, create a template in Anytype:
|
||||||
|
|
||||||
|
1. Open Anytype desktop app → Chiron space
|
||||||
|
2. Go to Content Model → Object Types → Brainstorm v2
|
||||||
|
3. Click Templates (top right) → Click + to create template
|
||||||
|
4. Name it "Brainstorm Session" and configure default fields:
|
||||||
|
- Pre-populated structure matching the brainstorm workflow
|
||||||
|
- Framework selector with options: None, Pros/Cons, SWOT, 5 Whys, How-Now-Wow, Starbursting, Constraint Mapping
|
||||||
|
- Status selector with options: Draft, Final, Archived
|
||||||
|
5. Save the template - it will be available when creating new brainstorms
|
||||||
|
|
||||||
|
## Key Principles
|
||||||
|
|
||||||
|
| Principle | Why |
|
||||||
|
|-----------|-----|
|
||||||
|
| **One question at a time** | Avoids overwhelming, gets better answers |
|
||||||
|
| **Multiple choice preferred** | Easier to respond, clarifies options |
|
||||||
|
| **Domain-agnostic** | Works for any topic, not just technical |
|
||||||
|
| **YAGNI ruthlessly** | Remove unnecessary scope from all explorations |
|
||||||
|
| **Recommendation-first** | Always lead with your suggested approach |
|
||||||
|
| **Flexible** | Go back and clarify when needed |
|
||||||
|
|
||||||
|
## When to Use Frameworks
|
||||||
|
|
||||||
|
For structured analysis, consult [references/thinking-frameworks.md](references/thinking-frameworks.md):
|
||||||
|
|
||||||
|
| Situation | Framework |
|
||||||
|
|-----------|-----------|
|
||||||
|
| Binary decision (A or B, yes or no) | Pros/Cons |
|
||||||
|
| Strategic assessment | SWOT |
|
||||||
|
| Finding root cause | 5 Whys |
|
||||||
|
| Prioritizing many ideas | How-Now-Wow Matrix |
|
||||||
|
| Comprehensive exploration | Starbursting (6 Questions) |
|
||||||
|
| Understanding boundaries | Constraint Mapping |
|
||||||
|
|
||||||
|
**Only suggest frameworks when they add value.** Many brainstorms work fine with conversational exploration alone.
|
||||||
|
|
||||||
|
## Example Session
|
||||||
|
|
||||||
|
```
|
||||||
|
User: "I'm not sure how to approach launching my new course"
|
||||||
|
|
||||||
|
AI: "Let me help you think through this. First, what kind of course is it
|
||||||
|
and who's the target audience?"
|
||||||
|
|
||||||
|
User: "NixOS course for developers who want to learn Nix"
|
||||||
|
|
||||||
|
AI: "Got it. What does success look like for this launch?
|
||||||
|
a) Maximum enrollments in first week
|
||||||
|
b) Building long-term audience/community
|
||||||
|
c) Validating the content before wider release
|
||||||
|
d) Something else?"
|
||||||
|
|
||||||
|
User: "B - building community"
|
||||||
|
|
||||||
|
AI: "That shapes the approach. What's your timeline?
|
||||||
|
a) Ready to launch now
|
||||||
|
b) 2-4 weeks to prepare
|
||||||
|
c) Flexible, no deadline"
|
||||||
|
|
||||||
|
...continues with options and recommendation...
|
||||||
|
```
|
||||||
|
|
||||||
|
## Handoff to Other Skills
|
||||||
|
|
||||||
|
After brainstorming, common next steps:
|
||||||
|
|
||||||
|
| Output | Next Skill | Trigger |
|
||||||
|
|--------|------------|---------|
|
||||||
|
| Project decision | plan-writing | "Create a project plan for this" |
|
||||||
|
| Task identified | task-management | "Add this to my tasks" |
|
||||||
|
| Work project | basecamp | "Set this up in Basecamp" |
|
||||||
|
|
||||||
|
All handoffs can reference the Anytype Brainstorm object via its ID or linked objects.
|
||||||
132
skill/brainstorming/references/anytype-workflow.md
Normal file
132
skill/brainstorming/references/anytype-workflow.md
Normal file
@@ -0,0 +1,132 @@
|
|||||||
|
# Brainstorm Anytype Workflow
|
||||||
|
|
||||||
|
This document describes how to create and use Brainstorm objects in Anytype.
|
||||||
|
|
||||||
|
## Quick Create (API)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Create a brainstorm object using Anytype MCP
|
||||||
|
Anytype_API-create-object
|
||||||
|
space_id: bafyreie5sfq7pjfuq56hxsybos545bi4tok3kx7nab3vnb4tnt4i3575p4.yu20gbnjlbxv
|
||||||
|
type_key: "brainstorm_v_2"
|
||||||
|
name: "NixOS Course Launch Strategy"
|
||||||
|
body: "Full brainstorm content here..."
|
||||||
|
icon: { format: "emoji", emoji: "💭" }
|
||||||
|
properties: [
|
||||||
|
{ key: "topic", text: "NixOS Course Launch Strategy" },
|
||||||
|
{ key: "context", text: "Want to launch NixOS course for developers" },
|
||||||
|
{ key: "outcome", text: "Build long-term audience/community" },
|
||||||
|
{ key: "constraints", text: "2-4 weeks prep time, solo creator" },
|
||||||
|
{ key: "options", text: "Option A: Early access... Option B: Free preview..." },
|
||||||
|
{ key: "decision", text: "Early access with community" },
|
||||||
|
{ key: "rationale", text: "Builds anticipation while validating content" },
|
||||||
|
{ key: "next_steps", text: "1. Create landing page, 2. Build email list..." },
|
||||||
|
{ key: "framework", select: "bafyreigokn5xgdosd4cihehl3tqfsd25mwdaapuhopjgn62tkpvpwn4tmy" },
|
||||||
|
{ key: "status", select: "bafyreiffiinadpa2fwxw3iylj7pph3yzbnhe63dcyiwr4x24ne4jsgi24" }
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
|
## Type Properties
|
||||||
|
|
||||||
|
| Property | Type | Purpose |
|
||||||
|
|----------|------|---------|
|
||||||
|
| `topic` | text | Short title/summary |
|
||||||
|
| `context` | text | Situation and trigger |
|
||||||
|
| `outcome` | text | What success looks like |
|
||||||
|
| `constraints` | text | Time, resources, boundaries |
|
||||||
|
| `options` | text | Options explored |
|
||||||
|
| `decision` | text | Final choice made |
|
||||||
|
| `rationale` | text | Reasoning behind decision |
|
||||||
|
| `next_steps` | text/objects | Action items or linked tasks |
|
||||||
|
| `framework` | select | Thinking framework used |
|
||||||
|
| `status` | select | Draft → Final → Archived |
|
||||||
|
| `tags` | multi_select | Categorization |
|
||||||
|
| `linked_projects` | objects | Related projects |
|
||||||
|
| `linked_tasks` | objects | Related tasks |
|
||||||
|
|
||||||
|
## Framework Tag IDs
|
||||||
|
|
||||||
|
| Framework | Tag ID |
|
||||||
|
|-----------|--------|
|
||||||
|
| None | `bafyreiatkdbwq53shngaje6wuw752wxnwqlk3uhy6nicamdr56jpvji34i` |
|
||||||
|
| Pros/Cons | `bafyreiaizrndgxmzbbzo6lurkgi7fc6evemoc5tivswrdu57ngkizy4b3u` |
|
||||||
|
| SWOT | `bafyreiaym5zkajnsrklivpjkizkuyhy3v5fzo62aaeobdlqzhq47clv6lm` |
|
||||||
|
| 5 Whys | `bafyreihgfpsjeyuu7p46ejzd5jce5kmgfsuxy7r5kl4fqdhuq7jqoggtgq` |
|
||||||
|
| How-Now-Wow | `bafyreieublfraypplrr5mmnksnytksv4iyh7frspyn64gixaodwmnhmosu` |
|
||||||
|
| Starbursting | `bafyreieyz6xjpt3zxad7h643m24oloajcae3ocnma3ttqfqykmggrsksk4` |
|
||||||
|
| Constraint Mapping | `bafyreigokn5xgdosd4cihehl3tqfsd25mwdaapuhopjgn62tkpvpwn4tmy` |
|
||||||
|
|
||||||
|
## Status Tag IDs
|
||||||
|
|
||||||
|
| Status | Tag ID |
|
||||||
|
|--------|--------|
|
||||||
|
| Draft | `bafyreig5um57baws2dnntaxsi4smxtrzftpe57a7wyhfextvcq56kdkllq` |
|
||||||
|
| Final | `bafyreiffiinadpa2fwxw3iylj7pph3yzbnhe63dcyiwr4x24ne4jsgi24` |
|
||||||
|
| Archived | `bafyreihk6dlpwh3nljrxcqqe3v6tl52bxuvmx3rcgyzyom6yjmtdegu4ja` |
|
||||||
|
|
||||||
|
## Template Setup (Recommended)
|
||||||
|
|
||||||
|
For a better editing experience, create a template in Anytype:
|
||||||
|
|
||||||
|
1. Open Anytype desktop app → Chiron space
|
||||||
|
2. Go to Content Model → Object Types → Brainstorm v2
|
||||||
|
3. Click Templates (top right) → Click + to create template
|
||||||
|
4. Configure with:
|
||||||
|
- **Name**: "Brainstorm Session"
|
||||||
|
- **Icon**: 💭
|
||||||
|
- **Default Status**: Draft
|
||||||
|
- **Pre-filled structure**: Leave body empty for dynamic content
|
||||||
|
- **Property defaults**: Set framework to "None" as default
|
||||||
|
|
||||||
|
5. Save the template
|
||||||
|
|
||||||
|
Now when creating brainstorms, select this template for a guided experience.
|
||||||
|
|
||||||
|
## Linking to Other Objects
|
||||||
|
|
||||||
|
After creating a brainstorm, link it to related objects:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Link to a project
|
||||||
|
Anytype_API-update-object
|
||||||
|
object_id: <brainstorm_id>
|
||||||
|
space_id: <chiron_space_id>
|
||||||
|
properties: [
|
||||||
|
{ key: "linked_projects", objects: ["<project_id>"] }
|
||||||
|
]
|
||||||
|
|
||||||
|
# Link to tasks
|
||||||
|
Anytype_API-update-object
|
||||||
|
object_id: <brainstorm_id>
|
||||||
|
space_id: <chiron_space_id>
|
||||||
|
properties: [
|
||||||
|
{ key: "linked_tasks", objects: ["<task_id_1>", "<task_id_2>"] }
|
||||||
|
]
|
||||||
|
```
|
||||||
|
|
||||||
|
## Searching Brainstorms
|
||||||
|
|
||||||
|
Find brainstorms by topic, status, or tags:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
Anytype_API-search-space
|
||||||
|
space_id: bafyreie5sfq7pjfuq56hxsybos545bi4tok3kx7nab3vnb4tnt4i3575p4.yu20gbnjlbxv
|
||||||
|
query: "NixOS"
|
||||||
|
types: ["brainstorm_v_2"]
|
||||||
|
```
|
||||||
|
|
||||||
|
Or list all brainstorms:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
Anytype_API-list-objects
|
||||||
|
space_id: bafyreie5sfq7pjfuq56hxsybos545bi4tok3kx7nab3vnb4tnt4i3575p4.yu20gbnjlbxv
|
||||||
|
type_id: bafyreifjneoy2bdxuwwai2e3mdn7zovudpzbjyflth7k3dj3o7tmhqdlw4
|
||||||
|
```
|
||||||
|
|
||||||
|
## Best Practices
|
||||||
|
|
||||||
|
1. **Create brainstorms for any significant decision** - Capture reasoning while fresh
|
||||||
|
2. **Mark as Final when complete** - Helps with search and review
|
||||||
|
3. **Link to related objects** - Creates context web
|
||||||
|
4. **Use frameworks selectively** - Not every brainstorm needs structure
|
||||||
|
5. **Review periodically** - Brainstorms can inform future decisions
|
||||||
151
skill/brainstorming/references/thinking-frameworks.md
Normal file
151
skill/brainstorming/references/thinking-frameworks.md
Normal file
@@ -0,0 +1,151 @@
|
|||||||
|
# Thinking Frameworks
|
||||||
|
|
||||||
|
Use these when structured analysis adds value. Not every brainstorm needs a framework.
|
||||||
|
|
||||||
|
## Pros/Cons Analysis
|
||||||
|
|
||||||
|
**Best for**: Binary decisions (do X or not, choose A or B)
|
||||||
|
|
||||||
|
| Option | Pros | Cons |
|
||||||
|
|--------|------|------|
|
||||||
|
| Option A | + Advantage 1 | - Disadvantage 1 |
|
||||||
|
| | + Advantage 2 | - Disadvantage 2 |
|
||||||
|
| Option B | + Advantage 1 | - Disadvantage 1 |
|
||||||
|
| | + Advantage 2 | - Disadvantage 2 |
|
||||||
|
|
||||||
|
**Tips**:
|
||||||
|
- Weight factors by importance if not all equal
|
||||||
|
- Consider: Which cons are dealbreakers?
|
||||||
|
- Ask: What would make each option clearly better?
|
||||||
|
|
||||||
|
## SWOT Analysis
|
||||||
|
|
||||||
|
**Best for**: Strategic assessment of a situation, project, or decision
|
||||||
|
|
||||||
|
| | Helpful | Harmful |
|
||||||
|
|----------|---------|---------|
|
||||||
|
| **Internal** | **Strengths** | **Weaknesses** |
|
||||||
|
| | What advantages do we have? | What could we improve? |
|
||||||
|
| | What do we do well? | Where do we lack resources? |
|
||||||
|
| **External** | **Opportunities** | **Threats** |
|
||||||
|
| | What trends could we exploit? | What obstacles exist? |
|
||||||
|
| | What gaps can we fill? | What is competition doing? |
|
||||||
|
|
||||||
|
**Action mapping**:
|
||||||
|
- Build on strengths
|
||||||
|
- Address or mitigate weaknesses
|
||||||
|
- Capture opportunities
|
||||||
|
- Defend against threats
|
||||||
|
|
||||||
|
## 5 Whys
|
||||||
|
|
||||||
|
**Best for**: Finding root cause of a problem
|
||||||
|
|
||||||
|
**Process**:
|
||||||
|
1. **State the problem**: [What's happening?]
|
||||||
|
2. **Why?** → [First answer]
|
||||||
|
3. **Why?** → [Dig deeper]
|
||||||
|
4. **Why?** → [Keep going]
|
||||||
|
5. **Why?** → [Getting closer]
|
||||||
|
6. **Why?** → [Root cause]
|
||||||
|
|
||||||
|
**Tips**:
|
||||||
|
- Stop when you reach something actionable
|
||||||
|
- May take fewer or more than 5 iterations
|
||||||
|
- Multiple branches possible (multiple "whys" at each level)
|
||||||
|
|
||||||
|
**Example**:
|
||||||
|
```
|
||||||
|
Problem: Course launch didn't meet enrollment targets
|
||||||
|
|
||||||
|
Why? → Not enough people saw the launch
|
||||||
|
Why? → Email list is small
|
||||||
|
Why? → Haven't been building audience consistently
|
||||||
|
Why? → No content publishing schedule
|
||||||
|
Why? → Haven't prioritized content creation
|
||||||
|
→ Root cause: Need to establish content rhythm before next launch
|
||||||
|
```
|
||||||
|
|
||||||
|
## How-Now-Wow Matrix
|
||||||
|
|
||||||
|
**Best for**: Prioritizing many ideas by feasibility and innovation
|
||||||
|
|
||||||
|
| | Hard to Implement | Easy to Implement |
|
||||||
|
|--------------------|-------------------|-------------------|
|
||||||
|
| **Innovative** | HOW (future investment) | WOW (prioritize these!) |
|
||||||
|
| **Conventional** | Why bother? | NOW (quick wins) |
|
||||||
|
|
||||||
|
**Quadrant actions**:
|
||||||
|
- **WOW**: Innovative + Easy = Do these first, high impact
|
||||||
|
- **NOW**: Conventional + Easy = Quick wins, do soon
|
||||||
|
- **HOW**: Innovative + Hard = Save for later, plan carefully
|
||||||
|
- **Why bother?**: Conventional + Hard = Probably skip
|
||||||
|
|
||||||
|
## Starbursting (6 Questions)
|
||||||
|
|
||||||
|
**Best for**: Comprehensive exploration of an idea or decision
|
||||||
|
|
||||||
|
Start with the idea in the center, then explore each question branch:
|
||||||
|
|
||||||
|
### Who?
|
||||||
|
- Who is affected?
|
||||||
|
- Who will execute?
|
||||||
|
- Who decides?
|
||||||
|
- Who are stakeholders?
|
||||||
|
|
||||||
|
### What?
|
||||||
|
- What exactly are we doing?
|
||||||
|
- What's the scope?
|
||||||
|
- What's the deliverable?
|
||||||
|
- What resources needed?
|
||||||
|
|
||||||
|
### When?
|
||||||
|
- When does it start?
|
||||||
|
- When are milestones?
|
||||||
|
- When is the deadline?
|
||||||
|
- When do we review?
|
||||||
|
|
||||||
|
### Where?
|
||||||
|
- Where does this happen?
|
||||||
|
- Where are resources?
|
||||||
|
- Where will it be deployed/shared?
|
||||||
|
|
||||||
|
### Why?
|
||||||
|
- Why are we doing this?
|
||||||
|
- Why now?
|
||||||
|
- Why this approach?
|
||||||
|
- Why does it matter?
|
||||||
|
|
||||||
|
### How?
|
||||||
|
- How will we execute?
|
||||||
|
- How will we measure success?
|
||||||
|
- How do we handle failures?
|
||||||
|
- How do we communicate progress?
|
||||||
|
|
||||||
|
## Constraint Mapping
|
||||||
|
|
||||||
|
**Best for**: Understanding boundaries before generating solutions
|
||||||
|
|
||||||
|
| Category | Constraints | Flexible? |
|
||||||
|
|----------|-------------|-----------|
|
||||||
|
| **Time** | Deadline, available hours | |
|
||||||
|
| **Budget** | Money available, cost limits | |
|
||||||
|
| **Resources** | People, skills, tools | |
|
||||||
|
| **Technical** | Platform, compatibility, performance | |
|
||||||
|
| **External** | Regulations, dependencies, stakeholders | |
|
||||||
|
| **Preferences** | Must-haves, nice-to-haves | |
|
||||||
|
|
||||||
|
**For each constraint, note**:
|
||||||
|
- Is it truly fixed or negotiable?
|
||||||
|
- What would change if we relaxed it?
|
||||||
|
- Are there creative workarounds?
|
||||||
|
|
||||||
|
## When NOT to Use Frameworks
|
||||||
|
|
||||||
|
Skip frameworks when:
|
||||||
|
- The decision is simple or obvious
|
||||||
|
- Conversational exploration is working well
|
||||||
|
- Time is very limited
|
||||||
|
- The user just needs to talk through it
|
||||||
|
|
||||||
|
**Default to conversation.** Suggest frameworks only when they'd genuinely help structure complex thinking.
|
||||||
165
skill/plan-writing/SKILL.md
Normal file
165
skill/plan-writing/SKILL.md
Normal file
@@ -0,0 +1,165 @@
|
|||||||
|
---
|
||||||
|
name: plan-writing
|
||||||
|
description: "Transform ideas into comprehensive, actionable project plans with templates. Use when: (1) creating project kickoff documents, (2) structuring new projects, (3) building detailed task breakdowns, (4) documenting project scope and stakeholders, (5) setting up project for execution. Triggers: project plan, kickoff document, plan out, structure project, project setup, create plan for, what do I need to start."
|
||||||
|
compatibility: opencode
|
||||||
|
---
|
||||||
|
|
||||||
|
# Plan Writing
|
||||||
|
|
||||||
|
Transform brainstormed ideas into comprehensive, actionable project plans using modular templates.
|
||||||
|
|
||||||
|
## Quick Reference
|
||||||
|
|
||||||
|
| Project Type | Templates to Use |
|
||||||
|
|--------------|------------------|
|
||||||
|
| Solo, <2 weeks | project-brief, todo-structure |
|
||||||
|
| Solo, >2 weeks | project-brief, todo-structure, risk-register |
|
||||||
|
| Team, any size | project-kickoff, stakeholder-map, todo-structure, risk-register |
|
||||||
|
|
||||||
|
## Process
|
||||||
|
|
||||||
|
### 1. Intake
|
||||||
|
|
||||||
|
Gather initial context:
|
||||||
|
- What project are we planning?
|
||||||
|
- Check for existing brainstorming output in `docs/brainstorms/`
|
||||||
|
- If starting fresh, gather basic context first
|
||||||
|
|
||||||
|
### 2. Scope Assessment
|
||||||
|
|
||||||
|
Ask these questions (one at a time):
|
||||||
|
|
||||||
|
1. **Solo or team project?**
|
||||||
|
- Solo → lighter documentation
|
||||||
|
- Team → need alignment docs (kickoff, stakeholders)
|
||||||
|
|
||||||
|
2. **Rough duration estimate?**
|
||||||
|
- <2 weeks → skip risk register
|
||||||
|
- >2 weeks → include risk planning
|
||||||
|
|
||||||
|
3. **Known deadline or flexible?**
|
||||||
|
- Hard deadline → prioritize milestone planning
|
||||||
|
- Flexible → focus on phased approach
|
||||||
|
|
||||||
|
4. **Which PARA area does this belong to?** (optional)
|
||||||
|
- Helps categorization and later task-management integration
|
||||||
|
|
||||||
|
### 3. Component Selection
|
||||||
|
|
||||||
|
Based on scope, select appropriate templates:
|
||||||
|
|
||||||
|
```
|
||||||
|
"Based on [team project, 6 weeks], I'll include:
|
||||||
|
✓ Project Kickoff (team alignment)
|
||||||
|
✓ Stakeholder Map (communication planning)
|
||||||
|
✓ Todo Structure (task breakdown)
|
||||||
|
✓ Risk Register (duration >2 weeks)
|
||||||
|
|
||||||
|
Shall I proceed with this structure?"
|
||||||
|
```
|
||||||
|
|
||||||
|
See [references/component-guide.md](references/component-guide.md) for selection logic.
|
||||||
|
|
||||||
|
### 4. Draft Generation
|
||||||
|
|
||||||
|
For each selected template:
|
||||||
|
1. Load template from `assets/templates/`
|
||||||
|
2. Fill with project-specific content
|
||||||
|
3. Present each major section for validation
|
||||||
|
4. Adjust based on feedback
|
||||||
|
|
||||||
|
Work through templates in this order:
|
||||||
|
1. Kickoff/Brief (establishes context)
|
||||||
|
2. Stakeholders (who's involved)
|
||||||
|
3. Todos (what needs doing)
|
||||||
|
4. Risks (what could go wrong)
|
||||||
|
|
||||||
|
### 5. Output
|
||||||
|
|
||||||
|
Generate final documents:
|
||||||
|
- Create `docs/plans/<project-name>/` directory
|
||||||
|
- Write each component as separate file
|
||||||
|
- Create `index.md` linking all components
|
||||||
|
|
||||||
|
```
|
||||||
|
docs/plans/<project-name>/
|
||||||
|
├── index.md # Links to all components
|
||||||
|
├── kickoff.md # or brief.md for solo projects
|
||||||
|
├── stakeholders.md # if team project
|
||||||
|
├── tasks.md # task breakdown
|
||||||
|
├── risks.md # if >2 weeks duration
|
||||||
|
└── updates/ # for future progress updates
|
||||||
|
└── YYYY-MM-DD.md
|
||||||
|
```
|
||||||
|
|
||||||
|
### 6. Handoff (Optional)
|
||||||
|
|
||||||
|
After plan is complete, offer next steps:
|
||||||
|
|
||||||
|
> "Ready to create this project in Basecamp? I can:
|
||||||
|
> - Create todo lists from the task structure
|
||||||
|
> - Set up card table columns from phases
|
||||||
|
> - Add initial cards/todos with due dates"
|
||||||
|
|
||||||
|
This triggers the basecamp skill for execution.
|
||||||
|
|
||||||
|
## Templates
|
||||||
|
|
||||||
|
All templates in `assets/templates/`:
|
||||||
|
|
||||||
|
| Template | Purpose | When to Include |
|
||||||
|
|----------|---------|-----------------|
|
||||||
|
| project-kickoff.md | Comprehensive 8-section kickoff | Team projects |
|
||||||
|
| project-brief.md | 1-page summary | Solo or simple projects |
|
||||||
|
| stakeholder-map.md | Who needs what, when | Team projects |
|
||||||
|
| risk-register.md | Risks and mitigations | Projects >2 weeks |
|
||||||
|
| todo-structure.md | Hierarchical task breakdown | Always |
|
||||||
|
| progress-update.md | Status update template | For ongoing tracking |
|
||||||
|
|
||||||
|
## PARA Integration (Optional)
|
||||||
|
|
||||||
|
If user wants PARA integration:
|
||||||
|
1. Prompt for Area assignment (from their defined Areas)
|
||||||
|
2. Can trigger task-management skill to create Anytype entries
|
||||||
|
3. Include Area reference in kickoff/brief document
|
||||||
|
|
||||||
|
This is optional - not all users use PARA.
|
||||||
|
|
||||||
|
## Integration with Other Skills
|
||||||
|
|
||||||
|
| From | To plan-writing | Output |
|
||||||
|
|------|-----------------|--------|
|
||||||
|
| brainstorming | Decision/context | Informs kickoff scope |
|
||||||
|
| plan-writing | → basecamp | Todo lists, cards |
|
||||||
|
| plan-writing | → task-management | Anytype tasks (optional) |
|
||||||
|
|
||||||
|
## Example Workflow
|
||||||
|
|
||||||
|
```
|
||||||
|
User: "Create a project plan for launching the Q2 training program"
|
||||||
|
|
||||||
|
AI: "I'll help structure this project. First, a few questions:
|
||||||
|
|
||||||
|
Is this a solo project or will others be involved?"
|
||||||
|
|
||||||
|
User: "Team - 3 people"
|
||||||
|
|
||||||
|
AI: "Duration estimate?
|
||||||
|
a) Less than 2 weeks
|
||||||
|
b) 2-4 weeks
|
||||||
|
c) More than a month"
|
||||||
|
|
||||||
|
User: "B - about 3 weeks"
|
||||||
|
|
||||||
|
AI: "Got it. For a 3-week team project, I'll include:
|
||||||
|
✓ Project Kickoff (team alignment)
|
||||||
|
✓ Stakeholder Map (communication)
|
||||||
|
✓ Todo Structure (task breakdown)
|
||||||
|
✓ Risk Register (3 weeks warrants this)
|
||||||
|
|
||||||
|
Shall I proceed?"
|
||||||
|
|
||||||
|
User: "Yes"
|
||||||
|
|
||||||
|
AI: [Proceeds through each template, filling with project details]
|
||||||
|
```
|
||||||
89
skill/plan-writing/assets/templates/progress-update.md
Normal file
89
skill/plan-writing/assets/templates/progress-update.md
Normal file
@@ -0,0 +1,89 @@
|
|||||||
|
# Progress Update: [Project Name]
|
||||||
|
|
||||||
|
**Period**: [Date] to [Date]
|
||||||
|
**Author**: [Name]
|
||||||
|
**Status**: 🟢 On Track / 🟡 At Risk / 🔴 Blocked
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Summary
|
||||||
|
|
||||||
|
[2-3 sentence executive summary: Where are we, what's the headline?]
|
||||||
|
|
||||||
|
**Overall Progress**: [X]% complete
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Completed This Period
|
||||||
|
|
||||||
|
- [x] [Task/milestone completed] - [Impact or note]
|
||||||
|
- [x] [Task completed]
|
||||||
|
- [x] [Task completed]
|
||||||
|
|
||||||
|
**Highlights**:
|
||||||
|
- [Notable achievement or win]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## In Progress
|
||||||
|
|
||||||
|
| Task | Owner | Progress | Expected Complete |
|
||||||
|
|------|-------|----------|-------------------|
|
||||||
|
| [Task 1] | [Name] | [X]% | [Date] |
|
||||||
|
| [Task 2] | [Name] | [X]% | [Date] |
|
||||||
|
| [Task 3] | [Name] | [X]% | [Date] |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Blockers & Risks
|
||||||
|
|
||||||
|
### Active Blockers
|
||||||
|
|
||||||
|
| Blocker | Impact | Owner | Action Needed | ETA |
|
||||||
|
|---------|--------|-------|---------------|-----|
|
||||||
|
| [Blocker 1] | [High/Med/Low] | [Name] | [What's needed] | [Date] |
|
||||||
|
|
||||||
|
### Emerging Risks
|
||||||
|
|
||||||
|
| Risk | Probability | Mitigation |
|
||||||
|
|------|-------------|------------|
|
||||||
|
| [Risk 1] | [H/M/L] | [Action] |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Next Period Plan
|
||||||
|
|
||||||
|
**Focus**: [Main focus for next period]
|
||||||
|
|
||||||
|
| Priority | Task | Owner | Target Date |
|
||||||
|
|----------|------|-------|-------------|
|
||||||
|
| 1 | [Highest priority task] | [Name] | [Date] |
|
||||||
|
| 2 | [Second priority] | [Name] | [Date] |
|
||||||
|
| 3 | [Third priority] | [Name] | [Date] |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Metrics
|
||||||
|
|
||||||
|
| Metric | Target | Current | Trend |
|
||||||
|
|--------|--------|---------|-------|
|
||||||
|
| [Metric 1] | [X] | [Y] | ↑/↓/→ |
|
||||||
|
| [Metric 2] | [X] | [Y] | ↑/↓/→ |
|
||||||
|
| Tasks Complete | [X] | [Y] | ↑ |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Decisions Needed
|
||||||
|
|
||||||
|
- [ ] [Decision 1]: [Options and recommendation] - Need by: [Date]
|
||||||
|
- [ ] [Decision 2]: [Context] - Need by: [Date]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Notes / Context
|
||||||
|
|
||||||
|
[Any additional context, changes in scope, stakeholder feedback, etc.]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Next update: [Date]*
|
||||||
48
skill/plan-writing/assets/templates/project-brief.md
Normal file
48
skill/plan-writing/assets/templates/project-brief.md
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
# Project Brief: [Project Name]
|
||||||
|
|
||||||
|
**Owner**: [Name]
|
||||||
|
**Timeline**: [Start Date] → [Target Date]
|
||||||
|
**Area**: [PARA Area, if applicable]
|
||||||
|
|
||||||
|
## Goal
|
||||||
|
|
||||||
|
[One clear sentence: What will be true when this project is complete?]
|
||||||
|
|
||||||
|
## Success Criteria
|
||||||
|
|
||||||
|
How we'll know it's done:
|
||||||
|
|
||||||
|
- [ ] [Criterion 1 - specific and measurable]
|
||||||
|
- [ ] [Criterion 2]
|
||||||
|
- [ ] [Criterion 3]
|
||||||
|
|
||||||
|
## Scope
|
||||||
|
|
||||||
|
**Included**:
|
||||||
|
- [Deliverable 1]
|
||||||
|
- [Deliverable 2]
|
||||||
|
|
||||||
|
**Not Included**:
|
||||||
|
- [Exclusion 1]
|
||||||
|
|
||||||
|
## Key Milestones
|
||||||
|
|
||||||
|
| Milestone | Target Date | Status |
|
||||||
|
|-----------|-------------|--------|
|
||||||
|
| [Milestone 1] | [Date] | [ ] |
|
||||||
|
| [Milestone 2] | [Date] | [ ] |
|
||||||
|
| [Complete] | [Date] | [ ] |
|
||||||
|
|
||||||
|
## Initial Tasks
|
||||||
|
|
||||||
|
1. [ ] [First task to start] - Due: [Date]
|
||||||
|
2. [ ] [Second task]
|
||||||
|
3. [ ] [Third task]
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
[Any context, constraints, or references worth capturing]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Created: [Date]*
|
||||||
106
skill/plan-writing/assets/templates/project-kickoff.md
Normal file
106
skill/plan-writing/assets/templates/project-kickoff.md
Normal file
@@ -0,0 +1,106 @@
|
|||||||
|
# Project Kickoff: [Project Name]
|
||||||
|
|
||||||
|
## 1. Project Essentials
|
||||||
|
|
||||||
|
| Field | Value |
|
||||||
|
|-------|-------|
|
||||||
|
| **Project Name** | [Name] |
|
||||||
|
| **Owner** | [Name] |
|
||||||
|
| **Start Date** | [YYYY-MM-DD] |
|
||||||
|
| **Target Completion** | [YYYY-MM-DD] |
|
||||||
|
| **PARA Area** | [Area, if applicable] |
|
||||||
|
|
||||||
|
### Overview
|
||||||
|
|
||||||
|
[2-3 sentence description of what this project will accomplish and why it matters.]
|
||||||
|
|
||||||
|
## 2. Goals and Success Criteria
|
||||||
|
|
||||||
|
**Primary Goal**: [One sentence describing the end state - what does "done" look like?]
|
||||||
|
|
||||||
|
**Success Criteria**:
|
||||||
|
- [ ] [Measurable criterion 1]
|
||||||
|
- [ ] [Measurable criterion 2]
|
||||||
|
- [ ] [Measurable criterion 3]
|
||||||
|
|
||||||
|
**Out of Scope** (explicitly):
|
||||||
|
- [Item that might be assumed but is NOT included]
|
||||||
|
- [Another exclusion]
|
||||||
|
|
||||||
|
## 3. Stakeholders
|
||||||
|
|
||||||
|
| Role | Person | Involvement Level |
|
||||||
|
|------|--------|-------------------|
|
||||||
|
| Project Owner | [Name] | High - decisions |
|
||||||
|
| Core Team | [Names] | High - execution |
|
||||||
|
| Informed | [Names] | Low - updates only |
|
||||||
|
| Approver | [Name, if any] | Medium - sign-off |
|
||||||
|
|
||||||
|
## 4. Timeline and Milestones
|
||||||
|
|
||||||
|
| Milestone | Target Date | Dependencies | Owner |
|
||||||
|
|-----------|-------------|--------------|-------|
|
||||||
|
| [Milestone 1] | [Date] | None | [Who] |
|
||||||
|
| [Milestone 2] | [Date] | Milestone 1 | [Who] |
|
||||||
|
| [Milestone 3] | [Date] | Milestone 2 | [Who] |
|
||||||
|
| **Project Complete** | [Date] | All above | [Owner] |
|
||||||
|
|
||||||
|
### Key Dates
|
||||||
|
|
||||||
|
- **Kickoff**: [Date]
|
||||||
|
- **First Review**: [Date]
|
||||||
|
- **Final Deadline**: [Date]
|
||||||
|
|
||||||
|
## 5. Scope
|
||||||
|
|
||||||
|
### In Scope
|
||||||
|
|
||||||
|
- [Deliverable 1]: [Brief description]
|
||||||
|
- [Deliverable 2]: [Brief description]
|
||||||
|
- [Deliverable 3]: [Brief description]
|
||||||
|
|
||||||
|
### Out of Scope
|
||||||
|
|
||||||
|
- [Explicitly excluded item 1]
|
||||||
|
- [Explicitly excluded item 2]
|
||||||
|
|
||||||
|
### Assumptions
|
||||||
|
|
||||||
|
- [Assumption 1 - e.g., "Budget approved"]
|
||||||
|
- [Assumption 2 - e.g., "Team available full-time"]
|
||||||
|
|
||||||
|
## 6. Risks
|
||||||
|
|
||||||
|
| Risk | Probability | Impact | Mitigation | Owner |
|
||||||
|
|------|-------------|--------|------------|-------|
|
||||||
|
| [Risk 1] | H/M/L | H/M/L | [Plan] | [Who] |
|
||||||
|
| [Risk 2] | H/M/L | H/M/L | [Plan] | [Who] |
|
||||||
|
|
||||||
|
*See detailed risk register if needed: [link to risks.md]*
|
||||||
|
|
||||||
|
## 7. Communication Plan
|
||||||
|
|
||||||
|
| What | Audience | Frequency | Channel | Owner |
|
||||||
|
|------|----------|-----------|---------|-------|
|
||||||
|
| Status Update | All stakeholders | Weekly | [Email/Basecamp] | [Who] |
|
||||||
|
| Team Sync | Core team | [Daily/2x week] | [Meeting/Slack] | [Who] |
|
||||||
|
| Milestone Review | Approvers | At milestone | [Meeting] | [Who] |
|
||||||
|
|
||||||
|
### Escalation Path
|
||||||
|
|
||||||
|
1. First: [Team lead/Owner]
|
||||||
|
2. Then: [Manager/Sponsor]
|
||||||
|
3. Finally: [Executive, if applicable]
|
||||||
|
|
||||||
|
## 8. Next Steps
|
||||||
|
|
||||||
|
Immediate actions to kick off the project:
|
||||||
|
|
||||||
|
- [ ] [Action 1] - @[owner] - Due: [date]
|
||||||
|
- [ ] [Action 2] - @[owner] - Due: [date]
|
||||||
|
- [ ] [Action 3] - @[owner] - Due: [date]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Document created: [Date]*
|
||||||
|
*Last updated: [Date]*
|
||||||
104
skill/plan-writing/assets/templates/risk-register.md
Normal file
104
skill/plan-writing/assets/templates/risk-register.md
Normal file
@@ -0,0 +1,104 @@
|
|||||||
|
# Risk Register: [Project Name]
|
||||||
|
|
||||||
|
## Risk Summary
|
||||||
|
|
||||||
|
| ID | Risk | Probability | Impact | Risk Score | Status |
|
||||||
|
|----|------|-------------|--------|------------|--------|
|
||||||
|
| R1 | [Brief risk name] | H/M/L | H/M/L | [H/M/L] | Open |
|
||||||
|
| R2 | [Brief risk name] | H/M/L | H/M/L | [H/M/L] | Open |
|
||||||
|
| R3 | [Brief risk name] | H/M/L | H/M/L | [H/M/L] | Open |
|
||||||
|
|
||||||
|
**Risk Score**: Probability × Impact (H×H=Critical, H×M or M×H=High, M×M=Medium, others=Low)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Detailed Risk Analysis
|
||||||
|
|
||||||
|
### R1: [Risk Name]
|
||||||
|
|
||||||
|
| Aspect | Detail |
|
||||||
|
|--------|--------|
|
||||||
|
| **Description** | [What could go wrong?] |
|
||||||
|
| **Probability** | High / Medium / Low |
|
||||||
|
| **Impact** | High / Medium / Low |
|
||||||
|
| **Category** | Technical / Resource / External / Schedule / Budget |
|
||||||
|
| **Trigger** | [What would indicate this risk is materializing?] |
|
||||||
|
|
||||||
|
**Mitigation Plan**:
|
||||||
|
- [Action 1 to reduce probability or impact]
|
||||||
|
- [Action 2]
|
||||||
|
|
||||||
|
**Contingency Plan** (if risk occurs):
|
||||||
|
- [Fallback action 1]
|
||||||
|
- [Fallback action 2]
|
||||||
|
|
||||||
|
**Owner**: [Name]
|
||||||
|
**Review Date**: [Date]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### R2: [Risk Name]
|
||||||
|
|
||||||
|
| Aspect | Detail |
|
||||||
|
|--------|--------|
|
||||||
|
| **Description** | [What could go wrong?] |
|
||||||
|
| **Probability** | High / Medium / Low |
|
||||||
|
| **Impact** | High / Medium / Low |
|
||||||
|
| **Category** | Technical / Resource / External / Schedule / Budget |
|
||||||
|
| **Trigger** | [What would indicate this risk is materializing?] |
|
||||||
|
|
||||||
|
**Mitigation Plan**:
|
||||||
|
- [Action 1]
|
||||||
|
- [Action 2]
|
||||||
|
|
||||||
|
**Contingency Plan**:
|
||||||
|
- [Fallback action]
|
||||||
|
|
||||||
|
**Owner**: [Name]
|
||||||
|
**Review Date**: [Date]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### R3: [Risk Name]
|
||||||
|
|
||||||
|
| Aspect | Detail |
|
||||||
|
|--------|--------|
|
||||||
|
| **Description** | [What could go wrong?] |
|
||||||
|
| **Probability** | High / Medium / Low |
|
||||||
|
| **Impact** | High / Medium / Low |
|
||||||
|
| **Category** | Technical / Resource / External / Schedule / Budget |
|
||||||
|
| **Trigger** | [What would indicate this risk is materializing?] |
|
||||||
|
|
||||||
|
**Mitigation Plan**:
|
||||||
|
- [Action 1]
|
||||||
|
- [Action 2]
|
||||||
|
|
||||||
|
**Contingency Plan**:
|
||||||
|
- [Fallback action]
|
||||||
|
|
||||||
|
**Owner**: [Name]
|
||||||
|
**Review Date**: [Date]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Risk Categories
|
||||||
|
|
||||||
|
| Category | Examples |
|
||||||
|
|----------|----------|
|
||||||
|
| **Technical** | Technology doesn't work, integration issues, performance |
|
||||||
|
| **Resource** | Key person unavailable, skill gaps, overcommitment |
|
||||||
|
| **External** | Vendor delays, regulatory changes, dependencies |
|
||||||
|
| **Schedule** | Delays, unrealistic timeline, competing priorities |
|
||||||
|
| **Budget** | Cost overruns, funding cuts, unexpected expenses |
|
||||||
|
|
||||||
|
## Review Schedule
|
||||||
|
|
||||||
|
- **Weekly**: Quick scan of high risks
|
||||||
|
- **Bi-weekly**: Full risk register review
|
||||||
|
- **At milestones**: Comprehensive reassessment
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Created: [Date]*
|
||||||
|
*Last reviewed: [Date]*
|
||||||
|
*Next review: [Date]*
|
||||||
72
skill/plan-writing/assets/templates/stakeholder-map.md
Normal file
72
skill/plan-writing/assets/templates/stakeholder-map.md
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
# Stakeholder Map: [Project Name]
|
||||||
|
|
||||||
|
## Stakeholder Matrix
|
||||||
|
|
||||||
|
| Stakeholder | Role | Interest Level | Influence | Information Needs |
|
||||||
|
|-------------|------|----------------|-----------|-------------------|
|
||||||
|
| [Name/Group] | [Role] | High/Medium/Low | High/Medium/Low | [What they need to know] |
|
||||||
|
| [Name/Group] | [Role] | High/Medium/Low | High/Medium/Low | [What they need to know] |
|
||||||
|
| [Name/Group] | [Role] | High/Medium/Low | High/Medium/Low | [What they need to know] |
|
||||||
|
|
||||||
|
## Communication Plan by Stakeholder
|
||||||
|
|
||||||
|
### [Stakeholder 1: Name/Role]
|
||||||
|
|
||||||
|
| Aspect | Detail |
|
||||||
|
|--------|--------|
|
||||||
|
| **Needs** | [What information they need] |
|
||||||
|
| **Frequency** | [How often: daily, weekly, at milestones] |
|
||||||
|
| **Channel** | [Email, Basecamp, meeting, Slack] |
|
||||||
|
| **Format** | [Brief update, detailed report, presentation] |
|
||||||
|
| **Owner** | [Who communicates with them] |
|
||||||
|
|
||||||
|
### [Stakeholder 2: Name/Role]
|
||||||
|
|
||||||
|
| Aspect | Detail |
|
||||||
|
|--------|--------|
|
||||||
|
| **Needs** | [What information they need] |
|
||||||
|
| **Frequency** | [How often] |
|
||||||
|
| **Channel** | [Preferred channel] |
|
||||||
|
| **Format** | [Format preference] |
|
||||||
|
| **Owner** | [Who communicates] |
|
||||||
|
|
||||||
|
### [Stakeholder 3: Name/Role]
|
||||||
|
|
||||||
|
| Aspect | Detail |
|
||||||
|
|--------|--------|
|
||||||
|
| **Needs** | [What information they need] |
|
||||||
|
| **Frequency** | [How often] |
|
||||||
|
| **Channel** | [Preferred channel] |
|
||||||
|
| **Format** | [Format preference] |
|
||||||
|
| **Owner** | [Who communicates] |
|
||||||
|
|
||||||
|
## RACI Matrix
|
||||||
|
|
||||||
|
| Decision/Task | [Person 1] | [Person 2] | [Person 3] | [Person 4] |
|
||||||
|
|---------------|------------|------------|------------|------------|
|
||||||
|
| [Decision 1] | R | A | C | I |
|
||||||
|
| [Decision 2] | I | R | A | C |
|
||||||
|
| [Task 1] | R | I | I | A |
|
||||||
|
|
||||||
|
**Legend**:
|
||||||
|
- **R** = Responsible (does the work)
|
||||||
|
- **A** = Accountable (final decision maker)
|
||||||
|
- **C** = Consulted (input required)
|
||||||
|
- **I** = Informed (kept updated)
|
||||||
|
|
||||||
|
## Escalation Path
|
||||||
|
|
||||||
|
1. **First Level**: [Name/Role] - for [types of issues]
|
||||||
|
2. **Second Level**: [Name/Role] - if unresolved in [timeframe]
|
||||||
|
3. **Executive**: [Name/Role] - for [critical blockers only]
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
- [Any stakeholder-specific considerations]
|
||||||
|
- [Political or relationship notes]
|
||||||
|
- [Historical context if relevant]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Created: [Date]*
|
||||||
|
*Last updated: [Date]*
|
||||||
94
skill/plan-writing/assets/templates/todo-structure.md
Normal file
94
skill/plan-writing/assets/templates/todo-structure.md
Normal file
@@ -0,0 +1,94 @@
|
|||||||
|
# Task Structure: [Project Name]
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
| Metric | Value |
|
||||||
|
|--------|-------|
|
||||||
|
| **Total Tasks** | [X] |
|
||||||
|
| **Phases** | [Y] |
|
||||||
|
| **Timeline** | [Start] → [End] |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Phase 1: [Phase Name]
|
||||||
|
|
||||||
|
**Target**: [Date]
|
||||||
|
**Owner**: [Name]
|
||||||
|
|
||||||
|
| # | Task | Owner | Estimate | Due | Depends On | Status |
|
||||||
|
|---|------|-------|----------|-----|------------|--------|
|
||||||
|
| 1.1 | [Task description] | [Name] | [Xh/Xd] | [Date] | - | [ ] |
|
||||||
|
| 1.2 | [Task description] | [Name] | [Xh/Xd] | [Date] | 1.1 | [ ] |
|
||||||
|
| 1.3 | [Task description] | [Name] | [Xh/Xd] | [Date] | - | [ ] |
|
||||||
|
|
||||||
|
**Phase Deliverable**: [What's complete when this phase is done]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Phase 2: [Phase Name]
|
||||||
|
|
||||||
|
**Target**: [Date]
|
||||||
|
**Owner**: [Name]
|
||||||
|
|
||||||
|
| # | Task | Owner | Estimate | Due | Depends On | Status |
|
||||||
|
|---|------|-------|----------|-----|------------|--------|
|
||||||
|
| 2.1 | [Task description] | [Name] | [Xh/Xd] | [Date] | Phase 1 | [ ] |
|
||||||
|
| 2.2 | [Task description] | [Name] | [Xh/Xd] | [Date] | 2.1 | [ ] |
|
||||||
|
| 2.3 | [Task description] | [Name] | [Xh/Xd] | [Date] | - | [ ] |
|
||||||
|
|
||||||
|
**Phase Deliverable**: [What's complete when this phase is done]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Phase 3: [Phase Name]
|
||||||
|
|
||||||
|
**Target**: [Date]
|
||||||
|
**Owner**: [Name]
|
||||||
|
|
||||||
|
| # | Task | Owner | Estimate | Due | Depends On | Status |
|
||||||
|
|---|------|-------|----------|-----|------------|--------|
|
||||||
|
| 3.1 | [Task description] | [Name] | [Xh/Xd] | [Date] | Phase 2 | [ ] |
|
||||||
|
| 3.2 | [Task description] | [Name] | [Xh/Xd] | [Date] | 3.1 | [ ] |
|
||||||
|
| 3.3 | [Task description] | [Name] | [Xh/Xd] | [Date] | 3.1 | [ ] |
|
||||||
|
|
||||||
|
**Phase Deliverable**: [What's complete when this phase is done]
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Unphased / Ongoing Tasks
|
||||||
|
|
||||||
|
| # | Task | Owner | Frequency | Notes |
|
||||||
|
|---|------|-------|-----------|-------|
|
||||||
|
| O.1 | [Recurring task] | [Name] | Weekly | [Notes] |
|
||||||
|
| O.2 | [Monitoring task] | [Name] | Daily | [Notes] |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Dependencies Summary
|
||||||
|
|
||||||
|
```
|
||||||
|
Phase 1 ──────► Phase 2 ──────► Phase 3
|
||||||
|
│ │
|
||||||
|
├── 1.1 ► 1.2 ├── 2.1 ► 2.2
|
||||||
|
└── 1.3 └── 2.3 (parallel)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Milestone Checklist
|
||||||
|
|
||||||
|
- [ ] **Milestone 1**: [Name] - [Date]
|
||||||
|
- [ ] [Required task 1.1]
|
||||||
|
- [ ] [Required task 1.2]
|
||||||
|
|
||||||
|
- [ ] **Milestone 2**: [Name] - [Date]
|
||||||
|
- [ ] [Required task 2.1]
|
||||||
|
- [ ] [Required task 2.2]
|
||||||
|
|
||||||
|
- [ ] **Project Complete** - [Date]
|
||||||
|
- [ ] All phases complete
|
||||||
|
- [ ] Success criteria met
|
||||||
|
- [ ] Handoff complete
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
*Created: [Date]*
|
||||||
|
*Last updated: [Date]*
|
||||||
117
skill/plan-writing/references/component-guide.md
Normal file
117
skill/plan-writing/references/component-guide.md
Normal file
@@ -0,0 +1,117 @@
|
|||||||
|
# Component Selection Guide
|
||||||
|
|
||||||
|
Decision matrix for which templates to include based on project characteristics.
|
||||||
|
|
||||||
|
## Decision Matrix
|
||||||
|
|
||||||
|
| Question | If Yes | If No |
|
||||||
|
|----------|--------|-------|
|
||||||
|
| Team project (>1 person)? | +kickoff, +stakeholders | Use brief instead of kickoff |
|
||||||
|
| Duration >2 weeks? | +risk-register | Skip risks |
|
||||||
|
| External stakeholders? | +stakeholders (detailed) | Stakeholders optional |
|
||||||
|
| Complex dependencies? | +detailed todos with deps | Simple todo list |
|
||||||
|
| Ongoing tracking needed? | +progress-update template | One-time plan |
|
||||||
|
|
||||||
|
## Quick Selection by Project Type
|
||||||
|
|
||||||
|
### Solo, Short (<2 weeks)
|
||||||
|
```
|
||||||
|
✓ project-brief.md
|
||||||
|
✓ todo-structure.md
|
||||||
|
```
|
||||||
|
|
||||||
|
### Solo, Medium (2-4 weeks)
|
||||||
|
```
|
||||||
|
✓ project-brief.md
|
||||||
|
✓ todo-structure.md
|
||||||
|
✓ risk-register.md
|
||||||
|
```
|
||||||
|
|
||||||
|
### Solo, Long (>4 weeks)
|
||||||
|
```
|
||||||
|
✓ project-brief.md (or kickoff for complex)
|
||||||
|
✓ todo-structure.md
|
||||||
|
✓ risk-register.md
|
||||||
|
✓ progress-update.md (for self-tracking)
|
||||||
|
```
|
||||||
|
|
||||||
|
### Team, Any Duration
|
||||||
|
```
|
||||||
|
✓ project-kickoff.md (always for team alignment)
|
||||||
|
✓ stakeholder-map.md
|
||||||
|
✓ todo-structure.md
|
||||||
|
✓ risk-register.md (if >2 weeks)
|
||||||
|
✓ progress-update.md (for status updates)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Template Purposes
|
||||||
|
|
||||||
|
### project-kickoff.md
|
||||||
|
Full 8-section document for team alignment:
|
||||||
|
1. Project essentials (name, owner, dates)
|
||||||
|
2. Goals and success criteria
|
||||||
|
3. Stakeholders overview
|
||||||
|
4. Timeline and milestones
|
||||||
|
5. Scope (in/out)
|
||||||
|
6. Risks overview
|
||||||
|
7. Communication plan
|
||||||
|
8. Next steps
|
||||||
|
|
||||||
|
**Use when**: Multiple people need alignment on what/why/how.
|
||||||
|
|
||||||
|
### project-brief.md
|
||||||
|
1-page summary for simpler projects:
|
||||||
|
- Goal statement
|
||||||
|
- Success criteria
|
||||||
|
- Key milestones
|
||||||
|
- Initial tasks
|
||||||
|
|
||||||
|
**Use when**: Solo project or simple scope that doesn't need formal kickoff.
|
||||||
|
|
||||||
|
### stakeholder-map.md
|
||||||
|
Communication matrix:
|
||||||
|
- Who needs information
|
||||||
|
- What they need to know
|
||||||
|
- How often
|
||||||
|
- Which channel
|
||||||
|
|
||||||
|
**Use when**: Team projects with multiple stakeholders needing different information.
|
||||||
|
|
||||||
|
### risk-register.md
|
||||||
|
Risk tracking table:
|
||||||
|
- Risk description
|
||||||
|
- Probability (H/M/L)
|
||||||
|
- Impact (H/M/L)
|
||||||
|
- Mitigation plan
|
||||||
|
- Owner
|
||||||
|
|
||||||
|
**Use when**: Projects >2 weeks or high-stakes projects of any duration.
|
||||||
|
|
||||||
|
### todo-structure.md
|
||||||
|
Hierarchical task breakdown:
|
||||||
|
- Phases or milestones
|
||||||
|
- Tasks under each phase
|
||||||
|
- Subtasks if needed
|
||||||
|
- Metadata: owner, estimate, due date, dependencies
|
||||||
|
|
||||||
|
**Use when**: Always. Every project needs task breakdown.
|
||||||
|
|
||||||
|
### progress-update.md
|
||||||
|
Status reporting template:
|
||||||
|
- Completed since last update
|
||||||
|
- In progress
|
||||||
|
- Blockers
|
||||||
|
- Next steps
|
||||||
|
- Metrics/progress %
|
||||||
|
|
||||||
|
**Use when**: Projects needing regular status updates (weekly, sprint-based, etc.).
|
||||||
|
|
||||||
|
## Customization Notes
|
||||||
|
|
||||||
|
Templates are starting points. Common customizations:
|
||||||
|
- Remove sections that don't apply
|
||||||
|
- Add project-specific sections
|
||||||
|
- Adjust detail level based on audience
|
||||||
|
- Combine templates for simpler output
|
||||||
|
|
||||||
|
The goal is useful documentation, not template compliance.
|
||||||
Reference in New Issue
Block a user