george-rd/growth-arsenal · Archived

growth-arsenal-workspace

Use when a growth-arsenal workshop needs to initialise, validate, update, gate, approve, invalidate or render its persistent project state.

Installation

$ npx skills add george-rd/growth-arsenal --skill growth-arsenal-workspace

Summary

  • Use when a growth-arsenal workshop needs to initialise, validate, update, gate, approve, invalidate or render its persistent project state.
  • Provides the declarative workspace, structured review contract and deterministic Growth Arsenal reports shared by grandslam-offer and hundred-million-leads.
  • Do not use it to make business judgements; the calling workshop owns research, synthesis and copy.

Stronger alternatives

This repository is archived — consider an actively maintained alternative.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from george-rd/growth-arsenal.

npx skills add george-rd/growth-arsenal

Browse all from george-rd/growth-arsenal

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1
License LICENSE
Default branch main
Open issues 2
Status Archived

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 6,269 B
  • docs SUMMARY.md 427 B

History

  1. First recorded snapshot · 3 installs

SKILL.md

Growth Arsenal Workspace

This supporting skill separates judgement from mechanics.

  • The calling workshop and its review agents decide what is true, useful and persuasive.
  • scripts/arsenal.py validates state, counts review consensus, records approval, invalidates dependent phases and renders files.
  • The JSON workspace is canonical. Markdown and HTML are generated views.
  • Never hand-edit generated reports. Change state or the shared assets and render again.

Core invariant

research + decisions + structured reviews
                  │
                  ▼
       <project>.arsenal.json
                  │
          deterministic build
       ┌──────────┼───────────┐
       ▼          ▼           ▼
   offer.md   progress.html   research.html

Resolve the script

Paths in this skill are relative to this SKILL.md. Resolve the installed skill directory once, then use:

python3 scripts/arsenal.py --help

When another skill calls growth-arsenal-workspace, it should resolve that installed skill's directory, then invoke scripts/arsenal.py from the resolved directory. Do not assume the user's current directory contains the script.

Standard flow

1. Initialise once

python3 scripts/arsenal.py init \
  --workspace acme.arsenal.json \
  --project acme \
  --name "Acme" \
  --locale en-GB \
  --currency GBP \
  --spelling british \
  --timezone Europe/London

Do not replace an existing workspace unless the user explicitly approves --force.

2. Apply one phase payload

Write a small JSON payload. The agent supplies the meaning; the script supplies the state transition.

{
  "summary": "Independent garages with missed enquiries are the approved market.",
  "data": {
    "market": "Independent garages with 3-20 staff",
    "pain_score": 8,
    "purchasing_power_score": 7,
    "targeting_score": 8,
    "growth_score": 6
  },
  "research_patch": {
    "market_identity": {
      "core_market": "Wealth",
      "niche": "Independent garages losing inbound enquiries"
    }
  },
  "evidence_refs": ["research:source-04", "research:source-11"]
}
python3 scripts/arsenal.py apply \
  --workspace acme.arsenal.json \
  --track offer \
  --phase market \
  --input phase-market.json

Applying an upstream phase marks any dependent work stale. Do not suppress that signal.

3. Add structured independent reviews

Each reviewer returns the contract in assets/schemas/review.schema.json. The orchestrating agent normalises semantically equivalent concerns to the same stable issue_key; the script does not infer whether two prose findings mean the same thing.

python3 scripts/arsenal.py add-review \
  --workspace acme.arsenal.json \
  --track offer \
  --phase market \
  --input market-reviews.json

4. Gate

python3 scripts/arsenal.py gate \
  --workspace acme.arsenal.json \
  --track offer \
  --phase market

Exit 0 means the phase can be approved. Exit 1 means the independent-review requirement is incomplete or one or more unaccepted critical issues remain. At least two distinct reviewers are required. Two distinct reviewers using the same issue_key make that issue critical; an explicitly blocking issue is also critical.

5. Resolve or explicitly accept risk

Fix the phase and run the review again. If the user chooses to proceed after the allowed revision cycles, record that choice:

python3 scripts/arsenal.py accept-risk \
  --workspace acme.arsenal.json \
  --track offer \
  --phase market \
  --issue-key market-too-broad \
  --reason "User will validate the narrower segment during the pilot" \
  --confirmed-by user

Risk acceptance applies only to the current phase revision. A revised phase must be reviewed and, where necessary, accepted again. Never invent acceptance on the user's behalf.

6. Approve and render

python3 scripts/arsenal.py approve \
  --workspace acme.arsenal.json \
  --track offer \
  --phase market

python3 scripts/arsenal.py render \
  --workspace acme.arsenal.json \
  --surface all

Approval is rejected when prerequisites are not approved, the phase is stale, its input revision snapshot has drifted, or fewer than two independent reviewers have submitted. Rendering writes the three HTML reports plus generated offer, research and decision Markdown views next to the workspace file.

7. Validate before handoff

python3 scripts/arsenal.py validate --workspace acme.arsenal.json
python3 scripts/arsenal.py status --workspace acme.arsenal.json

An approved phase whose recorded upstream revisions no longer match current state is invalid. Fix the state rather than editing the report.

Ownership boundary

The script may calculate or enforce:

  • phase order and revision numbers;
  • distinct-reviewer consensus by normalised issue key;
  • approval and revision-scoped accepted-risk state;
  • stale downstream state;
  • currency and percentage formatting;
  • safe HTML and Markdown boundaries;
  • atomic writes and deterministic report rendering.

The script must not decide:

  • which market is attractive;
  • whether evidence is credible;
  • whether two differently worded concerns are the same issue;
  • what an offer, guarantee, lead magnet or message should be;
  • whether copy is persuasive or honest.

Those remain agent and user decisions.

References

  • references/state-contract.md — canonical workspace and event semantics.
  • references/phase-contract.md — phase payload and review normalisation rules.
  • references/migration.md — importing or continuing legacy Markdown workshops.
  • assets/schemas/ — machine-readable contracts.
  • assets/design/ and assets/templates/ — shared Growth Arsenal report system.