Install
$ agentstack add skill-swan-gtm-gtm-skills-audit-swan ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Instructions
What this skill checks
Eight structural dimensions. Each is small — most produce 0-2 findings. Process them one at a time, write down the verdict (OK / WARN / FAIL) + a one-line summary, and move on. Do not try to gather all eight dimensions' raw data before reasoning. By the time you reach the report, you should have eight short verdicts in hand, nothing more.
Dimension 1 — Subscription and credits
swan-get-subscription. Check three things:
- Plan tier (FREE / paid).
- Credit balance + recent burn rate. If you don't have burn data in the response, estimate from a small
swan-search-sequencesrecent-activity sample (page 10) — don't pull the full log. - Feature flags vs. what active plays use.
Verdict:
- FAIL: out of credits, or active plays use features not enabled.
- WARN: 7 days, or auth-broken channel that a play expects.
- OK: ≥ 1 healthy sender with capacity.
One-line summary.
Dimension 4 — Integrations
For each integration referenced by an active trigger:
- Connected and authorized.
- Last successful sync recent.
If integration is referenced by an active trigger but not connected: FAIL.
Don't enumerate integrations the org doesn't use. One-line summary.
Dimension 5 — Active triggers (gradual)
Pull active triggers, page size 10. For each:
- Required inputs available? (sender connected, list exists, integration present)
- Has it fired ≥ 1 time in 60 days, or is it new?
Most triggers are healthy. Stop after the first 10 unless ≥ 3 problems surface — then pull more.
Verdict per trigger group, summarized to one line.
Dimension 6 — CRM hygiene
Only if a CRM is connected. Two tiny calls:
hubspot-list-object-propertiesfor companies. Check that the properties active plays depend on exist.hubspot-search-objectswith page size 10 to sample populated-ness ofhubspot_owner_id+ lifecycle stage. 10 is enough to spot a hygiene problem.
Verdict:
- FAIL: 20 failures returned in the truncated preview: switch to
swan-execute-code. Readfiles/tool-outputs/, group byerrorClassin pandas, print classes with count > 3.
Verdict based on top class count: > 10 → FAIL, 3-10 → WARN,
PAY ATTENTION:
ALL CLEAR:
NEXT STEP:
If no FAILs: lead with "no critical issues" before the WARN section.
---
### Rules
- MUST process dimensions sequentially. Each dimension's verdict + one-line summary is committed before the next runs.
- MUST cite specifics ("3 FAIL: 2 from HubSpot 401s, 1 from missing sender") not generalities ("integration issues").
- NEVER change anything. This skill is read-only.
- NEVER pull large logs in full. Use code + file-pointer if a list is > 20 items.
- If the org is < 7 days old, skip Dimensions 5-7 and label the report as "early-stage check — performance dimensions will populate as you use Swan."
## Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- **Author:** [swan-gtm](https://github.com/swan-gtm)
- **Source:** [swan-gtm/gtm-skills](https://github.com/swan-gtm/gtm-skills)
- **License:** MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.