proposal-manager
Skill4 starsChanged 3 months agoMITView on GitHub
Use this skill to analyze a solicitation and build a proposal plan before solution design begins. Extracts response type, page limits, section structure, evaluation criteria, win themes, and bid/no-bid assessment. Reads from inputs/ and writes to working/proposal-plan.md.
In this repository30 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- adversarial-reviewSkill
- capture-demand-signalsSkill
- capture-intentSkill
- capture-portal-structureSkill
- capture-scorecardSkill
- capture-submissionSkill
- competitor-assessmentSkill
- compliance-checkSkill
- customer-intelSkill
- dashboardSkill
- evidence-checkSkill
- export-proposalSkill
- import-from-captureSkill
- narrative-spineSkill
- new-proposalSkill
- opportunity-quick-lookSkill
- past-performanceSkill
- pricing-analystSkill
- proposal-editorSkill
- proposal-graphicsSkill
- proposal-patcherSkill
- proposal-solution-architectSkill
- proposal-storyboardSkill
- proposal-writerSkill
- red-team-reviewSkill
- setup-companySkill
- statusSkill
- submission-summarySkill
- technical-reviewSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
20 rules. About 0 are common, 10 are distinctive, and 10 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈10
Distinctive · estimate
This author's own choices. Worth a look.
10
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 20
Read in this order:
- Very specific: line 22
Portal format gate: If working/proposal-type.md declares submission_mechanism: web-form:
- Distinctive: line 24
If present, read it. The portal's section labels and character limits become the authoritative structure for this proposal plan.
- Very specific: line 27
All files in inputs/00_priority/ — solicitation, evaluation criteria, instructions to offerors (excluding portal-format.md, already read …
- Very specific: line 28
All files in inputs/01_customer/ — customer context, mission, constraints
- Very specific: line 32
If inputs/00_priority/ is empty, tell the user to drop the solicitation there first and stop.
- Very specific: line 34
Skip check: If this skill appears in skipped_skills of the proposal type (it shouldn't for any type in the registry, but check anyway), …
- Distinctive: line 68
Create a table of every stated requirement the proposal must address:
- Distinctive: line 89
Page: leave blank (filled by writer)
- Very specific: line 92
If the proposal type declares compliance_sources: [] (white-paper, rfi, rom, sources-sought), do not create a matrix.
- Distinctive: line 120
Enrichment pass (this skill): read the solicitation sources and the extracted table, then add criteria the patterns missed — implied …
- Very specific: line 131
If the proposal type has no formal evaluation criteria (white paper, RFI), still run the extraction — inferred reader priorities from Step …
- Distinctive: line 136
Before scoring bid/no-bid, make the prime vs.
- Distinctive: line 154
If bidding as sub: note which prime(s) to approach and what work share your company brings to the team.
- Distinctive: line 186
Write 3-5 win themes. Each must:
- Very specific: line 196
Write all findings to working/proposal-plan.md using this structure:
- Very specific: line 253
When writing working/proposal-plan.json, include:
- Very specific: line 261
Every evaluation_factor, win_theme, and discriminator gets a stable id (e.g., EF-1, WT-1, DS-1) so other skills and the dashboard can …
- Distinctive: line 279
If evaluation weights are not stated, infer priority from order listed and section prominence
- Distinctive: line 280
If this is a white paper with no formal evaluation criteria, infer criteria from the stated purpose and decision maker
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Proposal Manager Skill
Purpose
Bridge the gap between a blank proposal workspace and the technical solution design. Before the architect designs anything and before the writer drafts anything, this skill reads the solicitation and produces a complete proposal plan that governs every subsequent step.
When to Use
- A solicitation, RFP, RFI, white paper request, BAA, or CSO has been dropped into
inputs/00_priority/ - User says "analyze the solicitation", "build the proposal plan", or runs this after
/new-proposal - Immediately after
/new-proposaland before/proposal-solution-architect
Inputs
Read in this order:
working/proposal-type.md— read first. Declarescompliance_sources(which parts of the solicitation drive the compliance matrix),pricing_artifact,evaluator_framing, andsubmission_mechanism. If missing, instruct user to run/new-proposaland stop.- Portal format gate. If
working/proposal-type.mddeclaressubmission_mechanism: web-form:- Check for
inputs/00_priority/portal-format.md. If absent, exit immediately with: "Submission is to a web-form portal but no portal format has been captured. Run/capture-portal-structurefirst — it either inherits a known portal fromreference/portal-formats/or guides you through a first-time capture after you register on the portal. Without this, I cannot produce a valid proposal plan because the real section structure and character limits are unknown." - If present, read it. The portal's section labels and character limits become the authoritative structure for this proposal plan; they override whatever section list the solicitation PDF implies.
- Also read
working/section-budgets.md(produced by/capture-portal-structure) if present — this is what/proposal-writerwill use for per-section budget-first drafting.
- Check for
working/submission-summary.md— the confirmed deliverable spec (produced by/submission-summary). Authoritative source for response format, volume/section structure, page limits, pricing artifact, and due date. Use it for Step 2 instead of re-extracting. If it is missing, recommend the user run/submission-summaryfirst.- All files in
inputs/00_priority/— solicitation, evaluation criteria, instructions to offerors (excludingportal-format.md, already read above if applicable) - All files in
inputs/01_customer/— customer context, mission, constraints working/proposal-brief.md— created by/new-proposalreference/narrative-operating-modes.md— usepage_target,submission_mechanism, andevaluator_framingto recommend the proposal's prose mode.
If inputs/00_priority/ is empty, tell the user to drop the solicitation there first and stop.
Skip check: If this skill appears in skipped_skills of the proposal type (it shouldn't for any type in the registry, but check anyway), exit with "Skipped for type <type_id>."
Workflow
Step 1: Classify the Opportunity
Determine:
- Response type: RFP / RFQ / RFI / White Paper / BAA / SBIR / STTR / OTA / CSO
- Evaluation approach: Best Value / LPTA / Fixed-price / Sole-source / Advisory
- Competition type: Full & Open / Small Business Set-Aside / Sole Source / Task Order
- Contract type if applicable: FFP / CPFF / T&M / IDIQ
- Incumbent advantage: Is there a known incumbent? Who?
- Page/volume constraints: Hard limits, if any
Step 2: Extract Response Requirements
If working/submission-summary.md exists, it is authoritative. Copy its submission profile and volume/section breakdown into the proposal plan rather than re-extracting. The extraction guidance below applies only when the summary is absent — and in that case, recommend the user run /submission-summary first.
If submission_mechanism: web-form (and inputs/00_priority/portal-format.md has been read): pull section structure, labels, and character/word limits from the portal format file — NOT from the solicitation PDF. The solicitation describes the opportunity; the portal format describes the actual submission mechanics. Where they conflict, the portal format wins.
Pull from the portal format:
- Portal section list with labels and hard character/word limits (the
working/section-budgets.mdtable) - Required metadata fields (title length, TRL selector, system type enum, etc.)
- Image/attachment rules
- Agreements and opt-outs requiring human decisions
- Submission mechanics (save-and-resume, edit-after-submit, confirmation)
If submission_mechanism: document-upload or email: pull from the solicitation:
- Required sections/volumes and their page limits
- Required fonts, margins, file formats
- Required attachments (past performance forms, resumes, certifications)
- Proposal due date, submission method, and POC
- Any questions/clarifications deadline
Step 3: Build the Compliance Framework
Create a table of every stated requirement the proposal must address:
| ID | Requirement | Source (Section) | Mandatory/Desired | Addressed By | Notes |
Flag:
- Requirements with no obvious capability match → will become gaps for the architect
- Ambiguous requirements that need assumption documentation
- Requirements that imply certifications, clearances, or registrations we must confirm
Step 3b: Seed the Compliance Matrix
The compliance framework above is the analysis view. The compliance matrix is the living artifact that the writer and compliance-check will maintain through submission. Seed it now.
- Copy
reference/compliance-matrix-template.md→working/compliance-matrix.mdif it does not already exist. - Scope the matrix to the
compliance_sourcesdeclared inworking/proposal-type.md. Only extract rows from those sources (e.g., ifcompliance_sources: [L, M], do not seed rows from the PWS unless PWS is also listed). - For each "shall" statement or scored evaluation factor in those sources, add one row:
- Req ID: stable identifier (e.g.,
L.3.2.1,M.2,PWS.4.5— use the solicitation's own numbering where possible) - Source: which compliance source (L / M / PWS / SOW / EvaluationCriteria / SOO)
- Requirement: verbatim text, trimmed to ≤200 chars (don't paraphrase)
- Section: tentative section assignment (Technical Vol §3.2, Management Vol §2.1, etc.) — this is a recommendation; the architect and writer may reassign
- Page: leave blank (filled by writer)
- Status:
Planned - Evidence: blank (filled by writer)
- Req ID: stable identifier (e.g.,
- If the proposal type declares
compliance_sources: [](white-paper, rfi, rom, sources-sought), do not create a matrix. Note in the proposal plan that compliance tracking is not applicable for this type.
Step 4: Analyze Evaluation Criteria
Extract all stated evaluation factors and subfactors:
| Factor | Subfactor | Weight / Order of Importance | Evaluation Standard | Your Strength |
Note:
- Which factors are most heavily weighted
- Which factors are easy wins vs. competitive battlegrounds
- Whether price is evaluated separately or as a factor in best value
Step 4b: Extract the Evaluation Model (typed rubric with provenance)
The table in Step 4 is the analysis view. The evaluation model is the living, typed
representation of this solicitation's rubric — factors, relative weighting, pass/fail
gates, and submission constraints, each traced to a source sentence — that downstream
skills (/proposal-storyboard, /proposal-writer, /red-team-review) inject so the
draft is written toward how it will be judged.
- Deterministic baseline first:
This writespython scripts/extract-evaluation-model.py --proposal <slug>working/evaluation-model.md(the human-curatable running log) andworking/evaluation-model.json(derived sidecar perreference/schemas/evaluation-model.schema.json). - Enrichment pass (this skill): read the solicitation sources and the extracted table, then
add criteria the patterns missed — implied priorities, soft weighting, evaluator hot buttons
stated indirectly. Append them as new table rows with
Origin: ai-inferred,Status: extracted, and empty Source columns. Never present an inferred criterion as a cited one, and do not duplicate rows the baseline already found (compare normalized text). Do not invent criteria not grounded in the text. After appending, run the script again with--resyncto re-derive the JSON and context block. - Tell the user to curate: the table is a running log. They mark rows
confirmed/edited/rejected(or addmanualrows), then run--resync. Re-extraction never destroys reviewed or manual rows.
If the proposal type has no formal evaluation criteria (white paper, RFI), still run the
extraction — inferred reader priorities from Step 4's analysis become ai-inferred rows, so the
writer drafts against an explicit rubric instead of an implicit one.
Step 5: Prime vs. Sub Decision
Before scoring bid/no-bid, make the prime vs. sub call. This shapes every downstream decision — competitive strategy, teaming, pricing, and proposal structure all differ fundamentally based on this.
Bid as Prime when:
- Your company has the customer relationship and technical lead
- You can credibly perform the majority of work (typically 51%+)
- You have relevant past performance at comparable scope and dollar value
- Winning as prime advances your strategic positioning in this customer/domain
Bid as Sub when:
- A large prime has the customer relationship and you do not
- Your capability fills a specific gap in their solution but you can't cover the full scope
- The contract value or complexity exceeds your current capacity as prime
- Subcontracting builds a customer reference you can prime a follow-on
Conditional: Sub with intent to Prime the follow-on — a valid strategy for early-stage companies. Document this intent explicitly.
Record the decision: PRIME / SUB / PRIME-SUB TEAMING (co-prime) / CONDITIONAL
If bidding as sub: note which prime(s) to approach and what work share your company brings to the team.
Step 6: Bid/No-Bid Assessment
Score each factor and produce a recommendation. For prime bids, all factors apply. For sub bids, skip factors marked (prime only).
| Factor | Question | Score (1-5) | Notes |
| Technical alignment | Do we have capabilities that directly address the core requirements? | ||
| Customer alignment | Have we worked with this specific program office or below? (prime only) | ||
| Relevant experience | Do we have past performance at equivalent scope and dollar value? (prime only) | ||
| Incumbency | Is the incumbent vulnerable? Are we positioned to unseat them? (prime only) | N/A if no incumbent | |
| Customer mission familiarity | Do we understand this customer's specific mission domain (C2, ISR, logistics, etc.)? | ||
| Contract size fit | Is the contract value appropriate for our current scale and capacity? (prime only) | ||
| Competitive position | Can we win against likely competitors in this role? | ||
| Customer relationship | Do we know the decision maker or have a path to them? | ||
| Pricing competitiveness | Can we price to win at an acceptable margin? | ||
| Resource availability | Do we have the people to execute the work AND write the proposal? | ||
| Strategic value | Does winning this advance our positioning in this customer/domain? |
Scoring: 5=strong yes, 4=likely yes, 3=neutral/uncertain, 2=likely no, 1=significant gap
Threshold guidance:
- Average ≥ 4.0 → BID
- Average 3.0–3.9 → CONDITIONAL BID (state conditions)
- Average < 3.0 → NO-BID
- Any single factor scored 1 → flag as a blocking risk before proceeding
Recommendation: BID / NO-BID / CONDITIONAL BID (with conditions stated)
Step 7: Define Win Themes
Write 3-5 win themes. Each must:
- Map directly to an evaluation factor
- Reference a specific company capability or proof point
- Be expressible in one sentence
Format:
| Theme | Evaluation Factor | Proof Point |
Step 8: Write the Proposal Plan
Write all findings to working/proposal-plan.md using this structure:
# Proposal Plan — [Proposal Name]
## Opportunity Classification
- Type:
- Evaluation approach:
- Competition:
- Contract type:
- Incumbent:
- **Prime vs. Sub decision:** [PRIME / SUB / CO-PRIME / CONDITIONAL]
- **If sub:** Target prime(s) and your company's work share:
## Response Requirements
- Due date:
- Submission method:
- Questions deadline:
- Page limits: [by volume/section]
- Format requirements:
- Required attachments:
- POC:
## Compliance Framework
[compliance table]
## Evaluation Criteria Analysis
[evaluation table]
## Bid/No-Bid Assessment
[scoring table]
**Recommendation:**
## Win Themes
[win themes table]
## Open Questions / Assumptions
[list of ambiguities to resolve before writing]
## Recommended Proposal Structure
[include the recommended narrative operating mode and why it fits this opportunity]
[proposed outline with section owners and page budget]Output Files
Produce all three on every successful run:
working/proposal-plan.md— the narrative plan (human-readable)working/proposal-plan.json— structured sidecar conforming toreference/schemas/proposal-plan.schema.json(machine-readable; consumed by dashboard + downstream skills)working/compliance-matrix.md— living traceability artifact (unlesscompliance_sourcesis empty for this type)working/evaluation-model.md+working/evaluation-model.json— the typed rubric running log from Step 4b (produced byscripts/extract-evaluation-model.pyplus the enrichment pass)
The .md and .json forms must stay in sync on every invocation — write both atomically. Humans can edit the markdown freely; on the next /proposal-manager run, the JSON is regenerated. If a user hand-edits the JSON, that edit is preserved only until the next run.
Schema-compliant JSON sidecar
When writing working/proposal-plan.json, include:
schema_version: "proposal-plan.v1"(exact string)generated_by: "proposal-manager"generated_at: current ISO-8601 timestampproposal_name,type_id(fromworking/proposal-type.md)narrative_operating_modewithmode,rationale, andprimary_reader_needfromreference/narrative-operating-modes.mdclassification,response_requirements,evaluation_factors,win_themes,discriminators,ghosting_targets,bid_nobid,assumptions,open_questions,due_date,customer_name,agency
Every evaluation_factor, win_theme, and discriminator gets a stable id (e.g., EF-1, WT-1, DS-1) so other skills and the dashboard can reference them.
See the schema file for field definitions, enum values, and validation rules.
Activity Trail
On completion, append to working/activity.md (one line):
## <timestamp> — proposal-manager — <N requirements seeded>, <M eval factors>, <K evaluation-model criteria (J ai-inferred)>, bid/no-bid: <GO/NO-GO/CONDITIONAL> → working/proposal-plan.md + working/proposal-plan.json + working/compliance-matrix.md + working/evaluation-model.mdAlso append one JSON line to working/ai-runs.jsonl per reference/schemas/ai-run.schema.json with job_type: "planning". If the skill made multiple model calls (e.g., one for extraction, one for win-theme generation), log each one.
Rules
- Pull every requirement directly from the solicitation text — do not invent or assume
- Flag every gap explicitly; the architect will address them
- Win themes must connect to specific proof points, not general claims
- If evaluation weights are not stated, infer priority from order listed and section prominence
- If this is a white paper with no formal evaluation criteria, infer criteria from the stated purpose and decision maker
After Running This Skill
Tell the user:
- Bid/no-bid recommendation with rationale
- Top 3 compliance risks (requirements with no obvious match)
- Win theme summary
- Suggested next step:
/proposal-solution-architect
Lessons Learned
On White Papers
- White papers rarely state explicit evaluation criteria — infer from the office, the stated problem, and the decision maker's known priorities. For SOCPAC-type submissions, operational utility and DDIL compatibility were the implied discriminators even though never stated.
- For CDAO/DIU-type solicitations, evaluation innovation and mission-representative benchmarking matter more than past performance volume.
On Win Themes
- Generic themes ("we're the best") fail. Win themes must be specific: "[Model Name] matches [Competitor Model] on military tasks while running air-gapped on a laptop" is a win theme. "We have deep military AI expertise" is not.
- Three themes is usually the right number. Five or more dilutes focus.
On Compliance Frameworks
- Government evaluators score compliance before they score merit. A technically brilliant proposal that misses a formatting requirement or skips a required section can be disqualified outright.
- Build the compliance table first — before writing a single word of the proposal.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

