527 lines
14 KiB
Markdown
527 lines
14 KiB
Markdown
---
|
|
name: policyengine-writing
|
|
description: PolicyEngine writing style for blog posts, documentation, PR descriptions, and research reports - emphasizing active voice, quantitative precision, and neutral tone
|
|
---
|
|
|
|
# PolicyEngine Writing Skill
|
|
|
|
Use this skill when writing blog posts, documentation, PR descriptions, research reports, or any public-facing PolicyEngine content.
|
|
|
|
## When to Use This Skill
|
|
|
|
- Writing blog posts about policy analysis
|
|
- Creating PR descriptions
|
|
- Drafting documentation
|
|
- Writing research reports
|
|
- Composing social media posts
|
|
- Creating newsletters
|
|
- Writing README files
|
|
|
|
## Core Principles
|
|
|
|
PolicyEngine's writing emphasizes clarity, precision, and objectivity.
|
|
|
|
1. **Active voice** - Prefer active constructions over passive
|
|
2. **Direct and quantitative** - Use specific numbers, avoid vague adjectives/adverbs
|
|
3. **Sentence case** - Use sentence case for headings, not title case
|
|
4. **Neutral tone** - Describe what policies do, not whether they're good or bad
|
|
5. **Precise language** - Choose exact verbs over vague modifiers
|
|
|
|
## Active Voice
|
|
|
|
Active voice makes writing clearer and more direct.
|
|
|
|
**✅ Correct (Active):**
|
|
```
|
|
Harris proposes expanding the Earned Income Tax Credit
|
|
The reform reduces poverty by 3.2%
|
|
PolicyEngine projects higher costs than other organizations
|
|
We estimate the ten-year costs
|
|
The bill lowers the state's top income tax rate
|
|
Montana raises the EITC from 10% to 20%
|
|
```
|
|
|
|
**❌ Wrong (Passive):**
|
|
```
|
|
The Earned Income Tax Credit is proposed to be expanded by Harris
|
|
Poverty is reduced by 3.2% by the reform
|
|
Higher costs are projected by PolicyEngine
|
|
The ten-year costs are estimated
|
|
The state's top income tax rate is lowered by the bill
|
|
The EITC is raised from 10% to 20% by Montana
|
|
```
|
|
|
|
## Quantitative and Precise
|
|
|
|
Replace vague modifiers with specific numbers and measurements.
|
|
|
|
**✅ Correct (Quantitative):**
|
|
```
|
|
Costs the state $245 million
|
|
Benefits 77% of Montana residents
|
|
Lowers the Supplemental Poverty Measure by 0.8%
|
|
Raises net income by $252 in 2026
|
|
The reform affects 14.3 million households
|
|
Hours worked falls by 0.27%, or 411,000 full-time equivalent jobs
|
|
The top decile receives an average benefit of $1,033
|
|
PolicyEngine projects costs 40% higher than the Tax Foundation
|
|
```
|
|
|
|
**❌ Wrong (Vague adjectives/adverbs):**
|
|
```
|
|
Significantly costs the state
|
|
Benefits most Montana residents
|
|
Greatly lowers poverty
|
|
Substantially raises net income
|
|
The reform affects many households
|
|
Hours worked falls considerably
|
|
High earners receive large benefits
|
|
PolicyEngine projects much higher costs
|
|
```
|
|
|
|
## Sentence Case for Headings
|
|
|
|
Use sentence case (capitalize only the first word and proper nouns) for all headings.
|
|
|
|
**✅ Correct (Sentence case):**
|
|
```
|
|
## The proposal
|
|
## Nationwide impacts
|
|
## Household impacts
|
|
## Statewide impacts 2026
|
|
## Case study: the End Child Poverty Act
|
|
## Key findings
|
|
```
|
|
|
|
**❌ Wrong (Title case):**
|
|
```
|
|
## The Proposal
|
|
## Nationwide Impacts
|
|
## Household Impacts
|
|
## Statewide Impacts 2026
|
|
## Case Study: The End Child Poverty Act
|
|
## Key Findings
|
|
```
|
|
|
|
## Neutral, Objective Tone
|
|
|
|
Describe what policies do without value judgments. Let readers draw their own conclusions from the data.
|
|
|
|
**✅ Correct (Neutral):**
|
|
```
|
|
The reform reduces poverty by 3.2% and raises inequality by 0.16%
|
|
Single filers with earnings between $8,000 and $37,000 see their net incomes increase
|
|
The tax changes raise the net income of 75.9% of residents
|
|
PolicyEngine projects higher costs than other organizations
|
|
The top income decile receives 42% of total benefits
|
|
```
|
|
|
|
**❌ Wrong (Value judgments):**
|
|
```
|
|
The reform successfully reduces poverty by 3.2% but unfortunately raises inequality
|
|
Low-income workers finally see their net incomes increase
|
|
The tax changes benefit most residents
|
|
PolicyEngine provides more accurate cost estimates
|
|
The wealthiest households receive a disproportionate share of benefits
|
|
```
|
|
|
|
## Precise Verbs Over Adverbs
|
|
|
|
Choose specific verbs instead of generic verbs modified by adverbs.
|
|
|
|
**✅ Correct (Precise verbs):**
|
|
```
|
|
The bill lowers the top rate from 5.9% to 5.4%
|
|
The policy raises the maximum credit from $632 to $1,774
|
|
The reform increases the phase-in rate from 7.65% to 15.3%
|
|
This doubles Montana's EITC from 10% to 20%
|
|
The change eliminates the age cap
|
|
```
|
|
|
|
**❌ Wrong (Vague verbs + adverbs):**
|
|
```
|
|
The bill significantly changes the top rate
|
|
The policy substantially increases the maximum credit
|
|
The reform greatly boosts the phase-in rate
|
|
This dramatically expands Montana's EITC
|
|
The change completely removes the age cap
|
|
```
|
|
|
|
## Concrete Examples
|
|
|
|
Always include specific household examples with precise numbers.
|
|
|
|
**✅ Correct:**
|
|
```
|
|
For a single adult with no children and $10,000 of earnings, the tax provisions
|
|
increase their net income by $69 in 2026 and $68 in 2027, solely from the
|
|
doubled EITC match.
|
|
|
|
A single parent of two kids with an annual income of $50,000 will see a $252
|
|
increase to their net income: $179 from the expanded EITC, and $73 from the
|
|
lower bracket threshold.
|
|
|
|
A married couple with no dependents and $200,000 of earnings will see their
|
|
liability drop by $1,306 in 2027.
|
|
```
|
|
|
|
**❌ Wrong:**
|
|
```
|
|
Low-income workers see modest increases to their net income from the
|
|
expanded EITC.
|
|
|
|
Families with children benefit substantially from the tax changes.
|
|
|
|
High earners also see significant reductions in their tax liability.
|
|
```
|
|
|
|
## Tables and Data
|
|
|
|
Use tables liberally to present data clearly. Always include units and context.
|
|
|
|
**Example 1: Tax parameters over time**
|
|
|
|
| Year | Phase-in rate | Max credit | Phase-out start | Phase-out rate |
|
|
| ---- | ------------- | ---------- | --------------- | -------------- |
|
|
| 2025 | 15.3% | $1,774 | $13,706 | 15.3% |
|
|
| 2026 | 15.3% | $1,815 | $14,022 | 15.3% |
|
|
| 2027 | 15.3% | $1,852 | $14,306 | 15.3% |
|
|
|
|
**Example 2: Household impacts**
|
|
|
|
| Household composition | 2026 net income change | 2027 net income change |
|
|
| ------------------------------ | ---------------------- | ---------------------- |
|
|
| Single, no children, $10,000 | $66 | $68 |
|
|
| Single, two children, $50,000 | $252 | $266 |
|
|
| Married, no children, $200,000 | $853 | $1,306 |
|
|
|
|
**Example 3: Ten-year costs**
|
|
|
|
| Year | Federal cost ($ billions) |
|
|
| ------- | ------------------------- |
|
|
| 2025 | 14.3 |
|
|
| 2026 | 14.4 |
|
|
| 2027 | 14.7 |
|
|
| 2025-34 | 143.7 |
|
|
|
|
## Avoid Superlatives
|
|
|
|
Replace superlative claims with specific comparisons.
|
|
|
|
**✅ Correct:**
|
|
```
|
|
PolicyEngine projects costs 40% higher than the Tax Foundation
|
|
The top decile receives an average benefit of $1,033
|
|
The reform reduces child poverty by 3.2 percentage points
|
|
This represents Montana's largest income tax cut since 2021
|
|
```
|
|
|
|
**❌ Wrong:**
|
|
```
|
|
PolicyEngine provides the most accurate cost projections
|
|
The wealthiest households receive massive benefits
|
|
The reform dramatically slashes child poverty
|
|
This is Montana's largest income tax cut in history
|
|
```
|
|
|
|
## Structure and Organization
|
|
|
|
Follow a clear hierarchical structure with key findings up front.
|
|
|
|
**Standard blog post structure:**
|
|
|
|
```markdown
|
|
# Title (H1)
|
|
|
|
Opening paragraph states what happened and when, with a link to PolicyEngine.
|
|
|
|
Key results in [year]:
|
|
- Cost: $245 million
|
|
- Benefits: 77% of residents
|
|
- Poverty impact: Reduces SPM by 0.8%
|
|
- Inequality impact: Raises Gini by 0.16%
|
|
|
|
## The proposal (H2)
|
|
|
|
Detailed description of the policy changes, often with a table showing
|
|
the specific parameter values.
|
|
|
|
## Household impacts (H2)
|
|
|
|
Specific examples for representative household types.
|
|
|
|
### Example 1: Single filer (H3)
|
|
Detailed calculation...
|
|
|
|
### Example 2: Family with children (H3)
|
|
Detailed calculation...
|
|
|
|
## Statewide impacts (H2)
|
|
|
|
Population-level analysis with charts and tables.
|
|
|
|
### Budgetary impact (H3)
|
|
Cost/revenue estimates...
|
|
|
|
### Distributional impact (H3)
|
|
Winners/losers by income decile...
|
|
|
|
### Poverty and inequality (H3)
|
|
Impact on poverty rates and inequality measures...
|
|
|
|
## Methodology (H2)
|
|
|
|
Explanation of data sources, modeling approach, and caveats.
|
|
```
|
|
|
|
## Common Patterns
|
|
|
|
### Opening Paragraphs
|
|
|
|
State the facts directly with dates, actors, and actions:
|
|
|
|
```
|
|
[On April 28, 2025], Governor Greg Gianforte (R-MT) signed House Bill 337,
|
|
a bill that amends Montana's individual income tax code.
|
|
|
|
Vice President Harris proposes expanding the Earned Income Tax Credit (EITC)
|
|
for filers without qualifying dependents.
|
|
|
|
In her economic plan, Harris proposes to restore the expanded Earned Income
|
|
Tax Credit for workers without children to its level under the American
|
|
Rescue Plan Act in 2021.
|
|
```
|
|
|
|
### Key Findings Format
|
|
|
|
Lead with bullet points of quantitative results:
|
|
|
|
```
|
|
Key results in 2027:
|
|
- Costs the state $245 million
|
|
- Benefits 77% of Montana residents
|
|
- Lowers the Supplemental Poverty Measure by 0.8%
|
|
- Raises the Gini index by 0.16%
|
|
```
|
|
|
|
### Methodological Transparency
|
|
|
|
Always specify the model, version, and assumptions:
|
|
|
|
```
|
|
Based on static microsimulation modeling with PolicyEngine US (version 1.103.0),
|
|
we project the following economic impacts for 2025.
|
|
|
|
Assuming no behavioral responses, we project that the EITC expansion will cost
|
|
the federal government $14.3 billion in 2025.
|
|
|
|
Incorporating elasticities of labor supply used by the Congressional Budget Office
|
|
increases the reform's cost.
|
|
|
|
Over the ten-year budget window, this amounts to $143.7 billion.
|
|
```
|
|
|
|
### Household Examples
|
|
|
|
Always include the household composition, income, and specific dollar impacts:
|
|
|
|
```
|
|
For a single adult with no children and $10,000 of earnings, the tax provisions
|
|
increase their net income by $69 in 2026 and $68 in 2027.
|
|
|
|
A single parent of two kids with an annual income of $50,000 will see a $252
|
|
increase to their net income due to House Bill 337: $179 from the expanded EITC,
|
|
and $73 from the lower bracket threshold.
|
|
```
|
|
|
|
## Examples in Context
|
|
|
|
### Blog Post Opening
|
|
|
|
**✅ Correct:**
|
|
```
|
|
On April 28, 2025, Governor Gianforte signed House Bill 337, which lowers
|
|
Montana's top income tax rate from 5.9% to 5.4% and doubles the state EITC
|
|
from 10% to 20% of the federal credit.
|
|
|
|
Key results in 2027:
|
|
- Costs the state $245 million
|
|
- Benefits 77% of Montana residents
|
|
- Lowers the Supplemental Poverty Measure by 0.8%
|
|
- Raises the Gini index by 0.16%
|
|
|
|
Use PolicyEngine to view the full results or calculate the effect on your
|
|
household.
|
|
```
|
|
|
|
**❌ Wrong:**
|
|
```
|
|
On April 28, 2025, Governor Gianforte made history by signing an amazing new
|
|
tax cut bill that will dramatically help Montana families. House Bill 337
|
|
significantly reduces tax rates and greatly expands the EITC.
|
|
|
|
This groundbreaking reform will:
|
|
- Cost the state money
|
|
- Help most residents
|
|
- Reduce poverty substantially
|
|
- Impact inequality
|
|
|
|
Check out PolicyEngine to see how much you could save!
|
|
```
|
|
|
|
### PR Description
|
|
|
|
**✅ Correct:**
|
|
```
|
|
## Summary
|
|
|
|
This PR adds Claude Code plugin configuration to enable automated installation
|
|
of agents and skills for PolicyEngine development.
|
|
|
|
## Changes
|
|
|
|
- Add plugin auto-install configuration in .claude/settings.json
|
|
- Configure auto-install of country-models plugin from PolicyEngine/policyengine-claude
|
|
|
|
## Benefits
|
|
|
|
- Access to 15 specialized agents
|
|
- 3 slash commands (/encode-policy, /review-pr, /fix-pr)
|
|
- 2 skills (policyengine-us-skill, policyengine-standards-skill)
|
|
|
|
## Testing
|
|
|
|
After merging, team members trust the repo and the plugin auto-installs.
|
|
```
|
|
|
|
**❌ Wrong:**
|
|
```
|
|
## Summary
|
|
|
|
This amazing PR adds incredible new Claude Code plugin support that will
|
|
revolutionize PolicyEngine development!
|
|
|
|
## Changes
|
|
|
|
- Adds some configuration files
|
|
- Sets up plugins and stuff
|
|
|
|
## Benefits
|
|
|
|
- Gets you lots of cool new features
|
|
- Makes development much easier
|
|
- Provides great new tools
|
|
|
|
## Testing
|
|
|
|
Should work great once merged!
|
|
```
|
|
|
|
### Documentation
|
|
|
|
**✅ Correct:**
|
|
```
|
|
## Installation
|
|
|
|
Install PolicyEngine-US from PyPI:
|
|
|
|
```bash
|
|
pip install policyengine-us
|
|
```
|
|
|
|
This installs version 1.103.0 or later, which includes support for 2025
|
|
tax parameters.
|
|
```
|
|
|
|
**❌ Wrong:**
|
|
```
|
|
## Installation
|
|
|
|
Simply install PolicyEngine-US:
|
|
|
|
```bash
|
|
pip install policyengine-us
|
|
```
|
|
|
|
This will install the latest version with all the newest features!
|
|
```
|
|
|
|
## Special Cases
|
|
|
|
### Comparisons to Other Organizations
|
|
|
|
State facts neutrally without claiming superiority:
|
|
|
|
**✅ Correct:**
|
|
```
|
|
PolicyEngine projects higher costs than other organizations when considering
|
|
behavioral responses.
|
|
|
|
| Organization | Cost, 2025-2034 ($ billions) |
|
|
| ------------------------- | ---------------------------- |
|
|
| PolicyEngine (static) | 144 |
|
|
| PolicyEngine (dynamic) | 201 |
|
|
| Tax Foundation | 157 |
|
|
| Penn Wharton Budget Model | 135 |
|
|
```
|
|
|
|
**❌ Wrong:**
|
|
```
|
|
PolicyEngine provides more accurate estimates than other organizations.
|
|
|
|
Unlike other models that underestimate costs, PolicyEngine correctly accounts
|
|
for behavioral responses to project a more realistic $201 billion cost.
|
|
```
|
|
|
|
### Discussing Limitations
|
|
|
|
Acknowledge limitations directly without hedging:
|
|
|
|
**✅ Correct:**
|
|
```
|
|
## Caveats
|
|
|
|
The Current Population Survey has several limitations for tax microsimulation:
|
|
|
|
- Truncates high incomes for privacy, underestimating tax impacts on high earners
|
|
- Underestimates benefit receipt compared to administrative totals
|
|
- Reflects 2020 data with 2025 policy parameters
|
|
- Lacks detail for specific income types (assumes all capital gains are long-term)
|
|
```
|
|
|
|
**❌ Wrong:**
|
|
```
|
|
## Caveats
|
|
|
|
While our model is highly sophisticated, like all models it has some potential
|
|
limitations that users should be aware of:
|
|
|
|
- The data might not perfectly capture high incomes
|
|
- Benefits may be slightly underestimated
|
|
- We do our best to extrapolate older data to current years
|
|
```
|
|
|
|
## Writing Checklist
|
|
|
|
Before publishing, verify:
|
|
|
|
- [ ] Use active voice throughout
|
|
- [ ] Include specific numbers for all claims
|
|
- [ ] Use sentence case for all headings
|
|
- [ ] Maintain neutral, objective tone
|
|
- [ ] Choose precise verbs over vague adverbs
|
|
- [ ] Include concrete household examples
|
|
- [ ] Present data in tables
|
|
- [ ] Avoid all superlatives
|
|
- [ ] Structure with clear hierarchy
|
|
- [ ] Open with key quantitative findings
|
|
- [ ] Specify model version and assumptions
|
|
- [ ] Link to PolicyEngine when relevant
|
|
- [ ] Acknowledge limitations directly
|
|
|
|
## Resources
|
|
|
|
- **Example posts**: See `policyengine-app/src/posts/articles/` for reference implementations
|
|
- **PolicyEngine app**: https://policyengine.org for linking to analyses
|
|
- **Microsimulation docs**: https://policyengine.org/us/docs for methodology details
|