Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Reverse-engineer design systems, tokens, and components from live products or screenshots
.claude/skills/hashgraph-online-skill-extract/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-07 | ✗→✓ | ▲ Improved | 57% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 21% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 91% | 0% |
| case-12 | ✗→✓ | ▲ Improved | -10% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 69% | 0% |
> 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.
The extract skill provides comprehensive reverse-engineering capabilities for design systems and product architectures. It transforms undocumented codebases into structured, implementation-ready documentation.
Priority Order (High to Low Confidence):
theme.ts, tokens.json, Tailwind config:root declarationsColor Clustering Algorithm:
Detection Strategies:
Supported Frameworks:
Service Boundary Heuristics:
API Endpoint Detection:
When enabled, the extract feature uses multiple AI providers for higher accuracy:
Provider Roles:
Consensus Mechanism:
90_evidence/disagreements.mdoctopus-extract/
└── project-name/
└── timestamp/
├── README.md # Navigation and summary
├── metadata.json # Extraction parameters
│
├── 00_intent/
│ ├── answers.json # User intent responses
│ ├── intent-contract.md # Human-readable summary
│ └── detection-report.md # Stack auto-detection results
│
├── 10_design/
│ ├── tokens.json # W3C Design Tokens format
│ ├── tokens.css # CSS custom properties
│ ├── tokens.md # Human-readable token docs
│ ├── components.csv # Component inventory (tabular)
│ ├── components.json # Structured component data
│ ├── patterns.md # Layout and design patterns
│ └── storybook/ # Storybook scaffold (optional)
│ ├── .storybook/
│ └── stories/
│
├── 20_product/
│ ├── product-overview.md # What, who, key journeys
│ ├── feature-inventory.md # Features by domain
│ ├── architecture.md # C4 text description
│ ├── architecture.mmd # Mermaid C4 diagrams
│ ├── PRD.md # AI-agent executable PRD
│ ├── user-stories.md # Gherkin-style scenarios
│ ├── api-contracts.md # Endpoint specifications
│ ├── data-model.md # Entity relationships
│ └── implementation-plan.md # Phased milestones
│
└── 90_evidence/
├── quality-report.md # Coverage and confidence metrics
├── disagreements.md # Multi-AI conflicts
├── extraction-log.md # Timestamped progress log
└── references.json # File paths per claimAutomated validation ensures extraction quality:
bash/octo:extract ./my-app
bash/octo:extract ./my-app --mode design --storybook true
bash/octo:extract ./my-app --depth deep --multi-ai force
bash/octo:extract https://example.com --mode design --depth quick
Common error codes:
ERR-001: Invalid input (path/URL not found)ERR-002: Network timeout (URL extraction)ERR-003: Permission deniedERR-004: Out of memory (use --depth quick)VAL-001: Validation failed (no tokens detected)VAL-004: Low multi-AI consensus| Depth | Time Target | Coverage Target | |-------|-------------|-----------------| | Quick | < 2 min | 70% coverage, basic analysis | | Standard | 2-5 min | 85% coverage, comprehensive | | Deep | 5-15 min | 95% coverage, multi-AI validation |
This skill is informed by research on:
Current Version: 1.0.0 (Skeleton)
Implemented:
In Progress:
Planned:
See implementation plan in project documentation.
Implementation phases:
This skill implements the design specified in PRD v2.0 (AI-Executable)
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 14,802 | 14,853 | +0% | 1 | 1 | 0% | 286 | 2,315 | +709% | 0 | 0 | — |
case-02 | fail→fail | 40,782 | 14,188 | -65% | 1 | 1 | 0% | 8,272 | 2,288 | -72% | 0 | 0 | — |
case-03 | fail→fail | 39,233 | 11,758 | -70% | 1 | 1 | 0% | 7,146 | 2,323 | -67% | 0 | 0 | — |
case-04 | fail→fail | 26,404 | 28,214 | +7% | 1 | 1 | 0% | 4,218 | 2,220 | -47% | 0 | 0 | — |
case-05 | pass→fail | 10,725 | 9,705 | -10% | 1 | 1 | 0% | 2,215 | 2,152 | -3% | 0 | 0 | — |
case-06 | pass→pass | 10,756 | 16,240 | +51% | 1 | 1 | 0% | 1,048 | 2,823 | +169% | 0 | 0 | — |
case-07 | fail→pass | 14,142 | 7,362 | -48% | 1 | 1 | 0% | 1,547 | 2,431 | +57% | 0 | 0 | — |
case-08 | pass→pass | 16,057 | 7,888 | -51% | 1 | 1 | 0% | 1,883 | 2,441 | +30% | 0 | 0 | — |
case-09 | pass→pass | 14,589 | 7,092 | -51% | 1 | 1 | 0% | 1,714 | 2,278 | +33% | 0 | 0 | — |
case-10 | fail→pass | 11,918 | 7,374 | -38% | 1 | 1 | 0% | 1,939 | 2,354 | +21% | 0 | 0 | — |
case-11 | fail→pass | 25,267 | 2,310 | -91% | 1 | 1 | 0% | 1,230 | 2,354 | +91% | 0 | 0 | — |
case-12 | fail→pass | 26,869 | 2,257 | -92% | 1 | 1 | 0% | 2,617 | 2,343 | -10% | 0 | 0 | — |
case-13 | pass→pass | 7,143 | 1,997 | -72% | 1 | 1 | 0% | 1,077 | 2,318 | +115% | 0 | 0 | — |
case-14 | fail→pass | 9,637 | 7,149 | -26% | 1 | 1 | 0% | 1,344 | 2,269 | +69% | 0 | 0 | — |
case-15 | fail→pass | 25,736 | 8,006 | -69% | 1 | 1 | 0% | 4,193 | 2,468 | -41% | 0 | 0 | — |
case-16 | fail→pass | 20,226 | 2,224 | -89% | 1 | 1 | 0% | 2,505 | 2,257 | -10% | 0 | 0 | — |
case-17 | fail→pass | 23,508 | 2,227 | -91% | 1 | 1 | 0% | 3,998 | 2,346 | -41% | 0 | 0 | — |
case-18 | fail→pass | 13,175 | 7,022 | -47% | 1 | 1 | 0% | 2,075 | 2,297 | +11% | 0 | 0 | — |
case-19 | pass→pass | 5,935 | 1,898 | -68% | 1 | 1 | 0% | 946 | 2,229 | +136% | 0 | 0 | — |
case-20 | fail→pass | 16,408 | 1,740 | -89% | 1 | 1 | 0% | 1,835 | 2,219 | +21% | 0 | 0 | — |
case-21 | fail→pass | 15,935 | 2,940 | -82% | 1 | 1 | 0% | 1,746 | 2,465 | +41% | 0 | 0 | — |
case-22 | fail→pass | 11,712 | 2,145 | -82% | 1 | 1 | 0% | 1,140 | 2,347 | +106% | 0 | 0 | — |
case-23 | fail→pass | 13,559 | 7,209 | -47% | 1 | 1 | 0% | 2,190 | 2,304 | +5% | 0 | 0 | — |
case-24 | pass→pass | 16,505 | 7,154 | -57% | 1 | 1 | 0% | 1,864 | 2,264 | +21% | 0 | 0 | — |
case-25 | fail→pass | 10,418 | 7,132 | -32% | 1 | 1 | 0% | 1,624 | 2,316 | +43% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 25 cases were attempted, and 19 counted toward the lift figure. The other 6 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +52 percentage points is the difference between those two pass rates over the 19 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.