| name | grant-proposal-assistant |
| description | Assist with biomedical grant proposal drafting, structure, and revision; use when preparing fundable proposal sections, aligning aims and methods, or improving reviewer-facing clarity. |
| license | MIT |
| author | AIPOCH |
Source: https://github.com/aipoch/medical-research-skills
Grant Proposal Assistant
A comprehensive tool for writing competitive grant proposals targeting NIH (R01/R21), NSF, and other major funding agencies.
Quick Check
Use this command to verify that the packaged script entry point can be parsed before deeper execution.
python -m py_compile scripts/main.py
Audit-Ready Commands
Use these concrete commands for validation. They are intentionally self-contained and avoid placeholder paths.
python -m py_compile scripts/main.py
python scripts/main.py --help
python scripts/main.py --section project_summary
python scripts/main.py --section project_summary --agency NIH
When to Use
- Use this skill when the task needs Grant proposal writing assistant for NIH (R01/R21), NSF and other mainstream.
- Use this skill for protocol design tasks that require explicit assumptions, bounded scope, and a reproducible output format.
- Use this skill when you need a documented fallback path for missing inputs, execution errors, or partial evidence.
Workflow
- Confirm the user objective, required inputs, and non-negotiable constraints before doing detailed work.
- Validate that the request matches the documented scope and stop early if the task would require unsupported assumptions.
- Use the packaged script path or the documented reasoning path with only the inputs that are actually available.
- Return a structured result that separates assumptions, deliverables, risks, and unresolved items.
- If execution fails or inputs are incomplete, switch to the fallback path and state exactly what blocked full completion.
Capabilities
- Section Templates: Standard templates for all major grant sections
- Specific Aims Generator: Structured approach to crafting compelling Specific Aims pages
- Budget Justification Helper: Equipment, personnel, and other cost justifications
- Review & Critique: Self-assessment checklists for proposal quality
Usage
Command Line
# Generate Specific Aims template
python3 scripts/main.py --section aims --output my_aims.md
# Generate full proposal template
python3 scripts/main.py --section full --agency NIH --type R01 --output proposal.md
# Budget justification helper
python3 scripts/main.py --section budget --category personnel --output budget.md
# Review existing proposal
python3 scripts/main.py --review --input my_proposal.md
As Library
from scripts.main import GrantProposalAssistant
assistant = GrantProposalAssistant(agency="NIH", grant_type="R01")
template = assistant.generate_section("specific_aims")
budget = assistant.generate_budget_justification(category="equipment", items=[...])
Parameters
| Parameter | Description | Options |
|---|
--section | Section to generate | aims, significance, approach, budget, full |
--agency | Funding agency | NIH, NSF, DOD, VA |
--type | Grant mechanism | R01, R21, R03, SBIR, STTR |
--category | Budget category | personnel, equipment, supplies, travel, other |
--input | Input file for review | Path to existing proposal |
--output | Output file path | Path for generated content |
Technical Difficulty
Medium - Requires understanding of grant structure, funding agency requirements, and scientific writing best practices.
References
references/NIH_R01_template.md - NIH R01 full proposal template
references/NSF_template.md - NSF standard grant template
references/budget_templates.xlsx - Budget templates by category
references/review_checklist.md - Proposal quality checklist
references/specific_aims_examples.md - Example Specific Aims pages
Best Practices
- Start with Specific Aims: This 1-page summary drives the entire proposal
- Follow Page Limits: NIH R01 Research Strategy = 12 pages, Specific Aims = 1 page
- Use Significance-Innovation-Approach Structure: Standard for NIH applications
- Justify Everything: Every budget item needs a clear justification
- Review with Checklist: Use the built-in review tool before submission
Agency-Specific Notes
NIH R01/R21
- Page limits strictly enforced
- Significance, Innovation, Approach structure required
- Vertebrate animals and human subjects sections if applicable
- Resubmission strategy for A1 applications
NSF
- Project Summary (1 page) and Project Description (15 pages)
- Broader impacts criterion weighted equally with intellectual merit
- Data management plan required
- Facilities and resources section
Version
1.0.0 - Initial release with NIH and NSF support
Risk Assessment
| Risk Indicator | Assessment | Level |
|---|
| Code Execution | Python/R scripts executed locally | Medium |
| Network Access | No external API calls | Low |
| File System Access | Read input files, write output files | Medium |
| Instruction Tampering | Standard prompt guidelines | Low |
| Data Exposure | Output files saved to workspace | Low |
Security Checklist
Prerequisites
No additional Python packages required.
Evaluation Criteria
Success Metrics
Test Cases
- Basic Functionality: Standard input → Expected output
- Edge Case: Invalid input → Graceful error handling
- Performance: Large dataset → Acceptable processing time
Lifecycle Status
- Current Stage: Draft
- Next Review Date: 2026-03-06
- Known Issues: None
- Planned Improvements:
- Performance optimization
- Additional feature support
Output Requirements
Every final response should make these items explicit when they are relevant:
- Objective or requested deliverable
- Inputs used and assumptions introduced
- Workflow or decision path
- Core result, recommendation, or artifact
- Constraints, risks, caveats, or validation needs
- Unresolved items and next-step checks
Error Handling
- If required inputs are missing, state exactly which fields are missing and request only the minimum additional information.
- If the task goes outside the documented scope, stop instead of guessing or silently widening the assignment.
- If
scripts/main.py fails, report the failure point, summarize what still can be completed safely, and provide a manual fallback.
- Do not fabricate files, citations, data, search results, or execution outcomes.
Input Validation
This skill accepts requests that match the documented purpose of grant-proposal-assistant and include enough context to complete the workflow safely.
Do not continue the workflow when the request is out of scope, missing a critical input, or would require unsupported assumptions. Instead respond:
grant-proposal-assistant only handles its documented workflow. Please provide the missing required inputs or switch to a more suitable skill.
Response Template
Use the following fixed structure for non-trivial requests:
- Objective
- Inputs Received
- Assumptions
- Workflow
- Deliverable
- Risks and Limits
- Next Checks
If the request is simple, you may compress the structure, but still keep assumptions and limits explicit when they affect correctness.
When Not to Use
- Do not proceed when required input files, identifiers, parameters, or context are missing — ask the user to provide them first.
- Do not assume capabilities beyond this skill's declared scope when the user requests external operations or inferences.
- Do not proceed without user confirmation when overwriting existing results, executing high-cost batch operations, or expanding task scope.
Required Inputs
| Field | Required | Format/Source | Example | If Missing |
|---|
| User task description | Yes | Text | Research question, writing goal, analysis objective | Stop and ask user to provide |
| Primary input material | Depends on task | Text, file path, ID, table, or literature | PMID, PDF, CSV, DOCX, keywords, etc. | Specify which material type is missing |
| Output preference | No | Text | Language, format, target journal, template | Use skill default format |
Output Contract
- Primary output: Structured result or target file aligned with this skill's objective.
- Optional output: Intermediate check notes, issue list, supplementary suggestions, or generated file paths.
- Format requirement: Unless the user specifies otherwise, prefer stable, reviewable Markdown or JSON; if the skill's bundled script requires a fixed format, use that format.
- If partially complete: Must explicitly mark as PARTIAL and state which steps are completed and which remain.
Failure Handling
- Missing critical input: Explicitly state which fields, files, or identifiers are missing and pause.
- Script, template, or resource execution failure: Report the failing step, likely cause, and recovery suggestions — do not silently degrade.
- Partial completion only: Return the verified portion first, then list remaining blockers and suggested next steps.
User Checkpoints
- Before executing batch processing, overwriting files, long-running searches, or multi-stage generation, confirm scope and output format with the user.
- Before proceeding when a key judgment is ambiguous, evidence is insufficient, or the workflow is entering the next stage, confirm with the user.
Quick Validation
- Check that key scripts, templates, or reference file paths this skill depends on exist.
- Check that the final output contains the core fields, sections, or files specified for this task.
- Check that results clearly mark assumptions, limitations, and incomplete items.