Back to skills
extension
Category: AI Agent CapabilitiesNo API key required

manage-config

Manage per-plan configuration with schema validation

personAuthor: jakexiaohubgithub

Manage Config Skill

Per-plan configuration management for plan-specific settings stored in config.toon.

What This Skill Provides

  • Per-plan config.toon management with schema validation
  • Domain array management for multi-domain plans
  • Field-level get/set operations with nested access support
  • Multi-field retrieval

Note: workflow_skills are NOT stored in config.toon. They are resolved at runtime from marshal.json via plan-marshall-config resolve-workflow-skill.

When to Activate This Skill

Activate this skill when:

  • Creating initial plan configuration
  • Reading or updating plan settings
  • Retrieving domains for a plan

Storage Location

Configuration is stored in the plan directory:

.plan/plans/{plan_id}/config.toon

File Format

See standards/config-toon-format.md for complete format specification including field definitions, phase values, and examples.


Operations

Script: pm-workflow:manage-config:manage-config

create

Create config.toon with domains configuration.

python3 .plan/execute-script.py pm-workflow:manage-config:manage-config create \
  --plan-id {plan_id} \
  --domains java

Parameters:

| Parameter | Type | Required | Description | |-----------|------|----------|-------------| | --domains | string (comma-separated) | Yes | Domain list (e.g., java or java,javascript) | | --commit-strategy | enum | No | per_task (default), per_plan, none | | --create-pr | bool | No | Create PR on finalize (default from marshal.json) | | --verification-required | bool | No | Require verification (default from marshal.json) | | --verification-command | string | No | Verification command | | --branch-strategy | enum | No | feature (default), direct | | --force | flag | No | Overwrite existing config |

Output (TOON):

status: success
plan_id: my-feature
file: config.toon
created: true

config:
  domains[1]:
  - java
  commit_strategy: per_task
  create_pr: true
  verification_required: true
  branch_strategy: feature

get-domains

Get the domains array from config.toon.

python3 .plan/execute-script.py pm-workflow:manage-config:manage-config \
  get-domains --plan-id {plan_id}

Output (TOON):

status: success
plan_id: my-feature
domains[2]:
- java
- javascript
count: 2

read

Read entire config.toon content.

python3 .plan/execute-script.py pm-workflow:manage-config:manage-config read \
  --plan-id {plan_id}

Output (TOON):

status: success
plan_id: my-feature

config:
  domains[1]:
  - java
  commit_strategy: per_task

get

Get a specific field value. Supports nested field access via dot notation.

# Simple field
python3 .plan/execute-script.py pm-workflow:manage-config:manage-config get \
  --plan-id {plan_id} \
  --field commit_strategy

Output (TOON):

status: success
plan_id: my-feature
field: commit_strategy
value: per_task

set

Set a specific field value.

python3 .plan/execute-script.py pm-workflow:manage-config:manage-config set \
  --plan-id {plan_id} \
  --field commit_strategy \
  --value per_plan

Output (TOON):

status: success
plan_id: my-feature
field: commit_strategy
value: per_plan
previous: per_task

get-multi

Get multiple fields in one call.

python3 .plan/execute-script.py pm-workflow:manage-config:manage-config get-multi \
  --plan-id {plan_id} \
  --fields "commit_strategy,branch_strategy"

Output (TOON):

status: success
plan_id: my-feature
commit_strategy: per_task
branch_strategy: feature

Scripts

| Script | Purpose | Usage | |--------|---------|-------| | pm-workflow:manage-config:manage-config | Per-plan config.toon operations | python3 .plan/execute-script.py pm-workflow:manage-config:manage-config {subcommand} --help |


Validation Rules

| Field | Valid Values | |-------|--------------| | domains | lowercase identifiers (e.g., java, javascript, plan-marshall-plugin-dev, generic) | | commit_strategy | per_task, per_plan, none | | create_pr | true, false | | verification_required | true, false | | verification_command | any string | | branch_strategy | feature, direct |


Error Handling

status: error
plan_id: my-feature
error: invalid_domain
message: Invalid domain format: Java. Must be lowercase identifier

Workflow Skill Resolution

Workflow skills are resolved from marshal.json (not config.toon):

python3 .plan/execute-script.py plan-marshall:manage-plan-marshall-config:plan-marshall-config \
  resolve-workflow-skill --domain {domain} --phase {phase}

See plan-marshall:manage-plan-marshall-config for workflow skill resolution.


Integration Points

| Consumer | Operation | Purpose | |----------|-----------|---------| | plan-init-agent | create | Create config.toon with domains | | solution-outline-agent | get-domains | Get domains for deliverable assignment | | plan-execute | read, get | Read commit strategy, verification settings | | plan-finalize | get | Check create_pr, branch_strategy |


Related Skills

| Skill | Purpose | |-------|---------| | plan-marshall:manage-plan-marshall-config | Project-level marshal.json configuration, workflow skill resolution |