extract-skill
Reverse-engineer design systems, tokens, and components from live products or screenshots
NLSpec authoring — use when you need a structured specification from multi-AI research and consensus
$ npx -y skills add nyldn/claude-octopus --skill flow-spec --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/flow-specContext preview
The summary Claude sees to decide when to auto-load this skill.
NLSpec authoring — use when you need a structured specification from multi-AI research and consensus
name: flow-spec description: "NLSpec authoring — use when you need a structured specification from multi-AI research and consensus" disable-model-invocation: true
> **Host: Codex CLI** — This skill was designed for Claude Code and adapted for Codex. > Cross-reference commands use installed skill names in Codex rather than `/octo:*` slash commands. > Use the active Codex shell and subagent tools. Do not claim a provider, model, or host subagent is available until the current session exposes it. > For host tool equivalents, see `skills/blocks/codex-host-adapter.md`.
**DO NOT call Skill() again. DO NOT load any more skills. Execute directly.**
This skill uses **ENFORCED execution mode**. You MUST follow this exact 8-step sequence.
**Ask via AskUserQuestion BEFORE any other action.**
You MUST gather these inputs from the user — spec quality depends on knowing actors, constraints, and complexity upfront; without these the research query is too broad and the spec will have gaps:
AskUserQuestion with these questions: 1. **What to specify**: Project or feature name + brief description - "What system/feature should I specify?" 2. **Actors**: Who interacts with this system? - Options: End Users, Developers, Admins, External Services, Other 3. **Key constraints**: What matters most? - Options: Performance, Security, Compatibility, Scale - (multiSelect: true) 4. **Complexity class**: How complex is this? - Clear (well-understood, straightforward) - Complicated (multiple parts, but knowable) - Complex (emergent behavior, unknowns)
If user provided a description inline with the command (e.g., `/octo:spec user authentication system`), use that as the project description but STILL ask remaining questions (actors, constraints, complexity).
If user says "skip" for any question, note assumptions and proceed.
**DO NOT PROCEED TO STEP 2 until questions answered.**
**Check provider availability:**
provider_status=$(bash "${HOME}/.claude-octopus/plugin/scripts/helpers/check-providers.sh")
codex_status=$(echo "$provider_status" | grep -q '^codex:available' && echo "Available" || echo "Not installed")
agy_status=$(echo "$provider_status" | grep -q '^agy:available' && echo "Available" || echo "Not installed")**Display this banner BEFORE orchestrate.sh execution:**
🐙 CLAUDE OCTOPUS ACTIVATED - NLSpec Authoring Mode
Spec Phase: Generating structured specification for [project name]
Provider Availability:
Codex CLI: ${codex_status}
Antigravity CLI: ${agy_status}
Claude: Available (Synthesis & NLSpec generation)
Estimated Cost: $0.01-0.05
Estimated Time: 3-7 minutes**Validation:**
**DO NOT PROCEED TO STEP 3 until banner displayed.**
**Before executing the workflow, read any prior context:**
# Initialize state if needed
"${HOME}/.claude-octopus/plugin/scripts/state-manager.sh" init_state
# Set current workflow
"${HOME}/.claude-octopus/plugin/scripts/state-manager.sh" set_current_workflow "flow-spec" "spec"
# Get prior decisions (if any)
prior_decisions=$("${HOME}/.claude-octopus/plugin/scripts/state-manager.sh" get_decisions "all")
# Get context from previous phases (e.g., discover)
prior_context=$("${HOME}/.claude-octopus/plugin/scripts/state-manager.sh" read_state | jq -r '.context')
# Display what you found (if any)
if [[ "$prior_decisions" != "[]" && "$prior_decisions" != "null" ]]; then
echo "Building on prior decisions:"
echo "$prior_decisions" | jq -r '.[] | " - \(.decision) (\(.phase)): \(.rationale)"'
fi**This provides context from:**
**DO NOT PROCEED TO STEP 4 until state read.**
**You MUST execute this command via the native shell command tool:**
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh probe "specification research for: <project description>. Key areas: actors (<actors>), constraints (<constraints>), complexity (<complexity class>)"Incorporate the user's answers from Step 1 into the probe query to focus the research.
**CRITICAL: You are PROHIBITED from:**
**You MUST use the native shell command tool to invoke orchestrate.sh.**
**After orchestrate.sh completes, verify it succeeded:**
# Find the latest synthesis file (created within last 10 minutes) SYNTHESIS_FILE=$(find ~/.claude-octopus/results -name "probe-synthesis-*.md" -mmin -10 2>/dev/null | head -n1) if [[ -z "$SYNTHESIS_FILE" ]]; then echo "VALIDATION FAILED: No synthesis file found" echo "orchestrate.sh did not execute properly" exit 1 fi echo "VALIDATION PASSED: $SYNTHESIS_FILE" cat "$SYNTHESIS_FILE"
**If validation fails:** 1. Report error to user 2. Show logs from `~/.claude-octopus/logs/` 3. DO NOT proceed with generating NLSpec 4. DO NOT substitute with direct research — fallback to single-model analysis skips the multi-provider synthesis that surfaces edge cases and alternative approaches
Every AI model has blind spots. Claude Octopus supports twelve external provider integrations — Codex, Antigravity CLI, Copilot, Qwen, Ollama, Perplexity, OpenRouter, OrcaRouter, OpenCode, Cursor CLI, Grok, and Kimi Code — alongside the built-in Claude Code
Repo: nyldn/claude-octopus
Reverse-engineer design systems, tokens, and components from live products or screenshots
Multi-AI requirements scoping using available external providers (Double Diamond Define phase). Priority triggers: octo define, octo scope, co-define,…
Multi-AI validation, scoring, and review using available external providers (Double Diamond Deliver phase)
Multi-AI implementation using available external providers (Double Diamond Develop phase). DO NOT use for simple code edits, reading/reviewing code, built-in…
Multi-AI research using available external providers (Double Diamond Discover phase)
Decompose and execute large changes, migrations, or multi-issue fixes in parallel with quality gates