Internal — not for client sharing

Internal · Reference

Proposal system — map

Where the Mangrove proposal system lives, what each piece is for, and how to run a proposal end to end. Companion to the Skills catalog and the PROPOSAL-PLAYBOOK.md in the hub.

One hub, a few satellites. The whole system centers on the mangrove-docs hub repo — it holds the deck, the workflow, the build/deploy scripts, voice, brand, and now the two proposal skills. Everything else (the live-proposals host, the editor, quick estimates, the Firefly deck) is a separate repo the hub feeds or references. Clone the hub, work from it, and the skills + files stay in sync.

Where everything lives

PieceRepo / locationWhat it's for
The hub mangrove-docs
~/Dev/_MG Ops/mangrove-docs-wiki
Source of truth for the proposal system: base deck, playbook, build + deploy scripts, voice guides, brand tokens — and the two skills below (in .claude/skills/).
Branded deck mangrove-docs → platform/decks/mangrove-base/
live: mangrove-base-deck.pages.dev/deck
The master Mangrove-solo proposal deck. Every client proposal starts from a copy.
Workflow + scripts mangrove-docs → platform/{docs,build,deploy}/ Playbook, new-client.sh, publish_proposal.py, deploy.sh, voice + brand.
Live proposals host mg-proposals
live: proposals.mangrove-web.com
The assembled deploy artifact — one folder per live proposal. Source of truth for what's currently live. Don't hand-edit; publish_proposal.py writes here.
Proposal editor mg-proposal-editor
live: mg-proposal-editor.pages.dev
Shared app to edit any live proposal in-browser (/?proposal=<id>). Currently unauthenticated — auth moving to Clerk.
Quick estimates mg-estimates
~/Dev/_MG Ops/mg-estimates
No-repo, move-fast host for quick estimates (not full proposals). new-estimate.sh → publish.sh.
Firefly deck variant ff-proposal_template The Firefly-brand proposal deck, for Firefly-led / joint bids. Its own repo so it travels with each client copy.
Per client mg-client-<CODE> / mg-ff-client-<CODE>
~/Dev/_Clients/
One repo per client engagement — the tailored deck + working files. Scaffolded by the skills.

The two skills (now in the hub)

Both live in mangrove-docs/.claude/skills/ — they call the hub's files by path, so they ship with the hub rather than in a separate plugin. Available in Claude Code when you're working in the hub. Invoke with /<name>.

SkillWhat it does
mg-new-client-proposalStand up a full proposal: calls infra, then layers voice guides, RFP intake, and compliance audit. Publishes to proposals.mangrove-web.com/<slug>/<serial>/. Triggers: "new proposal", "start a bid".
mg-client-infrastructureStand up client hosting — local repo, GitHub, Cloudflare Pages, folder structure. Any project type; called by the proposal skill. Triggers: "new client repo", "set up hosting".

Generic, non-proposal skills (e.g. mg-session-handoff) stay in the marketplace plugins — see the Skills catalog. Rule of thumb: a skill tied to a specific repo's files lives in that repo's .claude/skills/; a standalone skill lives in a plugin.

How to run a proposal

#Step
1From the hub, invoke /mg-new-client-proposal with the client code + name (it runs /mg-client-infrastructure for repo + hosting first).
2It scaffolds mg-client-<CODE>, copies the base deck, and pulls in voice + RFP intake.
3Tailor the deck (fill placeholders, pick case studies, set timeline + team) per the PROPOSAL-PLAYBOOK.md.
4Verify against the RFP + run the pre-send checklist; strip any review flags.
5Publish with publish_proposal.py → assembles into mg-proposals → live at proposals.mangrove-web.com/<slug>/<serial>/.
6Need in-browser edits after sending? Open it in the proposal editor and fold changes back with FOLD-IN.md.