brainstorming
Structured design dialogue that validates ideas before implementation begins.
manage-references
Manage references.toon files with field-level access and list management
Full skill instructions
Manage references.toon files with field-level access and list management. Tracks files, branches, and external references for a plan.
Activate this skill when:
References are stored in the plan directory:
.plan/plans/{plan_id}/references.toon
TOON format with scalar and list fields:
# Plan References
branch: feature/my-feature
issue_url: https://github.com/org/repo/issues/123
build_system: maven
modified_files[3]:
- src/main/java/Foo.java
- src/main/java/Bar.java
- src/test/java/FooTest.java
external_docs[1]{title,url}:
JWT Guide,https://jwt.io/introduction
| Field | Type | Description |
|---|---|---|
branch | string | Git branch name |
base_branch | string | Base branch for PR (e.g., main) |
issue_url | string | GitHub issue URL |
build_system | string | Build system (maven, gradle, npm, none) |
modified_files | list | Files modified during implementation |
config_files | list | Configuration files changed |
test_files | list | Test files created/modified |
domains | list | Plan domains (e.g., java, documentation) |
external_docs | table | External documentation references |
affected_files | list | Files affected during outline phase (for execution tracking) |
Script: pm-workflow:manage-references:manage-references
Create references.toon with basic fields.
python3 .plan/execute-script.py pm-workflow:manage-references:manage-references create \
--plan-id {plan_id} \
--branch {branch_name} \
[--issue-url {url}] \
[--build-system {maven|gradle|npm}] \
[--domains {java,documentation}]
Parameters:
--plan-id (required): Plan identifier (kebab-case)--branch (required): Git branch name--issue-url: GitHub issue URL--build-system: Build system (maven, gradle, npm)--domains: Comma-separated domain list (e.g., java,documentation)Output (TOON):
status: success
plan_id: my-feature
file: references.toon
created: true
fields:
- branch
- base_branch
- modified_files
- config_files
- test_files
Note: Basic fields are created during plan-init. Additional reference fields are added as needed during execution.
Read entire references.toon content.
python3 .plan/execute-script.py pm-workflow:manage-references:manage-references read \
--plan-id {plan_id}
Output (TOON):
status: success
plan_id: my-feature
references:
branch: feature/my-feature
issue_url: https://github.com/org/repo/issues/123
modified_files: 3 items
Get a specific field value.
python3 .plan/execute-script.py pm-workflow:manage-references:manage-references get \
--plan-id {plan_id} \
--field branch
Output (TOON):
status: success
plan_id: my-feature
field: branch
value: feature/my-feature
Set a specific field value.
python3 .plan/execute-script.py pm-workflow:manage-references:manage-references set \
--plan-id {plan_id} \
--field branch \
--value feature/new-branch
Output (TOON):
status: success
plan_id: my-feature
field: branch
value: feature/new-branch
previous: feature/my-feature
Add a file to modified_files list.
python3 .plan/execute-script.py pm-workflow:manage-references:manage-references add-file \
--plan-id {plan_id} \
--file src/main/java/NewClass.java
Output (TOON):
status: success
plan_id: my-feature
section: modified_files
added: src/main/java/NewClass.java
total: 4
Remove a file from modified_files list.
python3 .plan/execute-script.py pm-workflow:manage-references:manage-references remove-file \
--plan-id {plan_id} \
--file src/main/java/OldClass.java
Output (TOON):
status: success
plan_id: my-feature
section: modified_files
removed: src/main/java/OldClass.java
total: 2
Add multiple values to a list field.
python3 .plan/execute-script.py pm-workflow:manage-references:manage-references add-list \
--plan-id {plan_id} \
--field affected_files \
--values "path/to/file1.md,path/to/file2.md,path/to/file3.md"
Parameters:
--plan-id (required): Plan identifier--field (required): List field name (e.g., affected_files, modified_files)--values (required): Comma-separated values to addOutput (TOON):
status: success
plan_id: my-feature
field: affected_files
added_count: 3
total: 3
Notes:
Set a list field to new values, replacing any existing content.
python3 .plan/execute-script.py pm-workflow:manage-references:manage-references set-list \
--plan-id {plan_id} \
--field affected_files \
--values "path/to/file1.md,path/to/file2.md"
Parameters:
--plan-id (required): Plan identifier--field (required): List field name (e.g., affected_files, modified_files)--values (required): Comma-separated valuesOutput (TOON):
status: success
plan_id: my-feature
field: affected_files
previous_count: 5
count: 2
Notes:
add-list)--values "" clears the listprevious_count showing how many items were replacedWhen to use set-list vs add-list:
set-list when you have the complete list of values to storeadd-list when appending to an existing list without knowing its contentsGet all references context in one call. Useful for getting comprehensive plan context.
python3 .plan/execute-script.py pm-workflow:manage-references:manage-references get-context \
--plan-id {plan_id} \
[--include-files]
Parameters:
--plan-id (required): Plan identifier--include-files: Include full file lists in output (default: only counts)Output (TOON):
status: success
plan_id: my-feature
branch: feature/my-feature
base_branch: main
modified_files_count: 3
config_files_count: 1
test_files_count: 2
issue_url: https://github.com/org/repo/issues/123
build_system: maven
With --include-files:
status: success
plan_id: my-feature
branch: feature/my-feature
base_branch: main
modified_files_count: 3
config_files_count: 1
test_files_count: 2
modified_files:
- src/main/java/Foo.java
- src/main/java/Bar.java
- src/main/java/Baz.java
config_files:
- pom.xml
test_files:
- src/test/java/FooTest.java
- src/test/java/BarTest.java
Script: pm-workflow:manage-references:manage-references
| Command | Parameters | Description |
|---|---|---|
create | --plan-id --branch [--issue-url] [--build-system] [--domains] | Create references.toon |
read | --plan-id | Read entire references |
get | --plan-id --field | Get specific field value |
set | --plan-id --field --value | Set specific field value |
add-file | --plan-id --file | Add file to modified_files |
remove-file | --plan-id --file | Remove file from modified_files |
add-list | --plan-id --field --values | Add multiple values to a list field |
set-list | --plan-id --field --values | Set a list field (replaces existing) |
get-context | --plan-id [--include-files] | Get all references context |
status: error
plan_id: my-feature
error: file_not_found
message: references.toon not found
Execution phase adds modified files as work progresses.
Finalization reads modified files for commit/PR creation.
Structured design dialogue that validates ideas before implementation begins.
Comprehensive design intelligence for web and mobile UI/UX across 10 technology stacks.
Comprehensive implementation plans for multi-step tasks, breaking down specs into bite-sized, testable steps.
Introduction to the obra skills system with mandatory skill invocation rules and best practices.
Execute a written implementation plan with critical review and task checkpoints.
Delegate independent tasks to specialized agents working concurrently with isolated context.
Isolated git worktrees with smart directory selection and safety verification.
Toolkit for interacting with and testing local web applications using Playwright. Supports verifying frontend functionality, debugging UI behavior, capturing browser screenshots, and viewing browser logs.
Plan searchable and shareable content that drives traffic, builds authority, and generates leads.
README-first repository scanner that extracts commands and classifies reproduction candidates without executing them.
Brainstorm and prioritize marketing strategies tailored to your SaaS stage, budget, and goals.
Plan and optimize your website's page hierarchy, navigation, URL structure, and internal linking.
The world's fastest calendar for remote work
Capture, organize, and utilize your knowledge effortlessly.
Instant Summaries of Audio & Video Interviews with AnySummary
Transform PDFs into engaging mind maps.
Chat with any PDF instantly
Create an optimal daily plan using your voice
A productivity platform to centralize organizational knowledge and workflows with contextual AI assistance.
AskYourPDF Pricing Plans: Tailored to Your Needs