Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add rules/atlassian/forge-skills/software-compositiongit clone --depth 1 https://github.com/atlassian/forge-skillsWhat it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00007 | $0.01004 |
| Opus 5 | $0.00003 | $0.00502 |
| Sonnet 5 | $0.00001 | $0.00201 |
| Haiku 4.5 | $0.00001 | $0.00100 |
Grade A, and why
software-composition scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 162 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Context
- Forge apps depend on npm packages that may contain known vulnerabilities. SCA identifies CVEs in dependencies.
- Related CWE: CWE-1104 (Use of Unmaintained Third Party Components).
- Required for Marketplace security compliance.
SCA Tools and Commands
# npm audit (built-in)
npm audit --json > npm-audit.json
npm audit fix # Auto-fix where possible
# Snyk (recommended)
snyk test --json > snyk-results.json
snyk monitor # Continuous monitoring
# OSV Scanner (Google)
osv-scanner --lockfile=package-lock.json
# Trivy
trivy fs --scanners vuln .
Key Vulnerability Patterns for Forge
| Package | Vulnerability Type | Forge Impact |
|---|---|---|
| lodash < 4.17.21 | Prototype Pollution | asUser→asApp escalation |
| axios < 0.21.1 | SSRF | Request forgery |
| minimist < 1.2.6 | Prototype Pollution | Various |
| node-fetch < 2.6.7 | Header injection | Request manipulation |
| jsonwebtoken < 9.0.0 | JWT bypass | Auth bypass |
Detection Process
# 1. Check for vulnerable packages
npm audit
# 2. Detailed analysis
npm ls lodash # Check specific package version
# 3. Review for Forge-specific risks
# Check if vulnerable package is used in:
# - Resolver code (backend)
# - Custom UI (frontend)
# - Build process only (lower risk)
Interpreting Results
┌───────────────┬──────────────────────────────────────────────────────┐
│ Severity │ Action Required │
├───────────────┼──────────────────────────────────────────────────────┤
│ Critical │ Immediate update or removal │
│ High │ Update before next release │
│ Medium │ Plan update; assess exploitability │
│ Low │ Track; update during maintenance │
└───────────────┴──────────────────────────────────────────────────────┘
Example Analysis
# npm audit output
┌───────────────┬──────────────────────────────────────────────────────┐
│ High │ Prototype Pollution in lodash │
├───────────────┼──────────────────────────────────────────────────────┤
│ Package │ lodash │
│ Dependency of │ some-package │
│ Path │ some-package > lodash │
│ More info │ https://npmjs.com/advisories/1065 │
└───────────────┴──────────────────────────────────────────────────────┘
# Resolution
npm update lodash
# or if nested dependency:
npm update some-package
# or force resolution in package.json:
"overrides": {
"lodash": "^4.17.21"
}
Detection Checklist
- Run
npm auditand record findings. - Run Snyk or alternative SCA tool.
- Check for Forge-specific high-risk packages (lodash, axios).
- Assess if vulnerable code paths are reachable.
- Verify build-only dependencies vs runtime dependencies.
- Check for outdated but not yet vulnerable packages.
False Positive Handling
# Some vulnerabilities may not apply:
1. Build-only dependencies
- Vulnerability in webpack plugin
- Not included in runtime bundle
- Lower risk but should still update
2. Unused code paths
- Vulnerable function not imported
- Assess actual usage
3. Mitigated by Forge platform
- Some network-level vulns blocked by Forge egress controls
Remediation Approaches
# 1. Direct update (preferred)
npm update package-name
# 2. Force specific version
npm install package-name@fixed-version
# 3. Override nested dependency
# In package.json:
{
"overrides": {
"vulnerable-package": "^fixed.version"
}
}
# 4. Replace package entirely
npm uninstall old-package
npm install alternative-package
Reporting Guidance
- List all vulnerabilities with severity, package, and CVE.
- Note which are runtime vs build-only dependencies.
- Assess exploitability in Forge context.
- Provide specific version upgrade paths.
- Map to CWE-1104; include CVE references.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 162 lines · 7 tokens per session scan A 76795ce36a6a
software-composition is a cursor rule published in the GitHub repository atlassian/forge-skills (20 stars, last pushed 2d ago), licensed Apache-2.0. It adds 7 tokens to every session and 1,004 once invoked, about $0.0000 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other cursor rules, from other repositories
project
4DA project rules and conventions.
angular-20
This rule provides comprehensive best practices and coding standards for Angular development, focusing on modern TypeScript, standalone components, signals, and performance optimizations.
dev-standard
Apache Superset development standards and guidelines for Cursor IDE.
typescript
Changes to these high-fan-out internals can affect every message, delta, element, or rerun. Keep work in them minimal, and benchmark changes with representative stress-test apps.
coolify-ai-docs
Master reference to all Coolify AI documentation in .ai/ directory.
python_lib
Tips and guidelines specific to the development of the Streamlit Python library, not applicable to scripts and e2e tests.