Evaluate all pending seed trigger conditions against current project state and show which ideas are ready to promote and which are still waiting
Scanned 9/5/2026
Install to Claude Code
npx -y skills add Snowflake-Labs/cocoplus --skill cocoseed --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Cocoseed?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/snowflake-labs-cocoseed-cocoplus)More formats (shields.io, HTML) on the badges page.
---
name: seed-list
description: Evaluate all pending seed trigger conditions against current project state and show which ideas are ready to promote and which are still waiting
version: 1.0.2
user-invocable: true
command: $seed list
author: "CocoPlus"
tags:
- cocoplus
feature: CocoSeed (Feature 29)
---
# $seed list
Evaluate all stored seeds against current project state. Shows two sections: seeds Ready to Promote (trigger has fired) and seeds Waiting (trigger not yet met).
## Preconditions
- `.cocoplus/` must be initialized
- `.cocoplus/seeds/` directory may be empty (outputs "No pending seeds" if so)
## Step-by-Step Behavior
1. **Verify initialization:** Check `.cocoplus/` exists. If not, output: "CocoPlus not initialized. Run `$pod init` first." and exit.
2. **Read all seed files:** Load all `.yaml` files from `.cocoplus/seeds/` with `status: pending` or `status: triggered`. Skip seeds with `status: promoted` or `status: discarded`.
3. **If no seeds found:** Output: "No pending seeds. Add ideas with `$seed add`." and exit.
4. **Evaluate each trigger condition** against current project state:
**Filesystem presence checks:**
- "when coco-map.json exists" / "when CocoMap is committed" → check `.cocoplus/map/coco-map.json`
- "when [feature] is active" → check corresponding mode flag in `.cocoplus/modes/`
- "when [filename] exists" → check for that file in `.cocoplus/`
**Lifecycle phase checks:**
- "when Build phase completes" → read `.cocoplus/lifecycle/meta.json`, check if `build` phase is in completed phases
- "when Ship phase completes" → check if lifecycle phase is "shipped"
- "when [phase] phase begins" → check current phase field
**Mode flag checks:**
- "when [feature] is enabled" → check `.cocoplus/modes/[feature].on`
**Manual conditions** (plain language not matching above patterns):
- Always show as "pending manual confirmation" — do not auto-trigger
5. **Update triggered status:** For any seed whose condition just fired (was `pending`, now evaluates as triggered), update its `.yaml` file: set `status: triggered`, add `triggered_date: [ISO8601]`.
6. **Display output** in two sections:
```
Seeds Ready to Promote ([N]):
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[seed-id] — [idea]
Triggered: [trigger condition that fired]
Captured during: [captured_phase] phase on [captured_date]
Promote with: $seed promote [seed-id]
[repeat for each triggered seed]
Seeds Waiting ([N]):
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
[seed-id] — [idea]
Waiting for: [trigger condition]
Status: [not yet / pending manual confirmation]
Captured during: [captured_phase] phase on [captured_date]
[repeat for each waiting seed]
```
7. **If no triggered seeds:** Display only the Waiting section with message: "No seeds are ready yet. Trigger conditions are still pending."
## Error Cases
- **Seeds directory missing:** Output "No seeds directory found. Add ideas with `$seed add`." and exit
- **Corrupt YAML file:** Skip and warn: "Could not read [filename]. Check file format."
## Exit Criteria
This skill is complete when:
- All seeds are evaluated against current state
- Triggered seeds have been updated in their YAML files
- Two-section display is shown to developer
## Anti-Rationalization
Do NOT:
- Automatically promote any seed — that is always `$seed promote`
- Create any git commit
- Modify seed content (idea or trigger) — only `status` and `triggered_date` are updated
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!