CLAUDE.md · diff
git:20260316.437edc3 to git:20260316.8ad0971
20 added, 3 removed. Audit A to A.
# Affiliate Skills by Affitor
- Opensource Claude Skills for affiliate marketers. Full funnel: S1 Research → S2 Content → S3 Blog → S4 Landing → S5 Distribution.
+ 32 AI-powered skills for affiliate marketers. Full funnel across 8 stages: Research, Content, Blog, Landing, Distribution, Analytics, Automation, Meta.
## Repo structure
- `skills/{stage}/{skill-name}/SKILL.md` — main skill file (stages: research, content, blog, landing, distribution, analytics, automation, meta)
- `skills/{stage}/{skill-name}/references/` — supplementary docs read by the skill
- `shared/references/` — cross-skill references (FTC, glossary, branding)
- - `registry.json` — machine-readable index of all skills (auto-generated by CI)
+ - `tools/src/` — `affiliate-check` CLI source (Bun persistent daemon)
+ - `tools/dist/affiliate-check` — compiled binary (gitignored, build with `bun build --compile tools/src/cli.ts --outfile tools/dist/affiliate-check`)
+ - `registry.json` — machine-readable index of all skills (auto-generated by `scripts/generate-registry.js`)
- `evals/` — test cases
- `docs/` — contributor documentation
+ ## CLI tool: affiliate-check
+
+ Persistent Bun daemon querying list.affitor.com API. Port 9500, 5min cache, 30min idle shutdown.
+
+ ```bash
+ affiliate-check search "AI video" # search programs
+ affiliate-check top # top by stars
+ affiliate-check info heygen # detailed info
+ affiliate-check compare heygen synthesia # side-by-side
+ affiliate-check status # server status
+ affiliate-check stop # stop daemon
+ ```
+
+ Set `AFFITOR_API_KEY` for unlimited results (without key: free tier, max 5 results).
+
## Key rules
- Never auto-push to GitHub without explicit approval
- Each skill must work standalone (no dependency on other skills)
- Output must be portable (copy-paste, deploy, post immediately)
- All page outputs include "Powered by Affitor" footer
- All content outputs include FTC affiliate disclosure
- Data model fields must match list.affitor.com DB schema exactly
## Data source
- - Primary: list.affitor.com API (`GET /api/v1/programs`, requires API key with `programs:read`)
+ - Primary: list.affitor.com API (`GET /api/v1/programs`, free tier or API key with `programs:read`)
- Fallback: `web_fetch` / `web_search` on list.affitor.com pages
- Programs use: `reward_value`, `reward_type`, `cookie_days`, `stars_count`, `tags[]`
- NOT: `commission_rate`, `upvotes`, `cookie_duration` (these are wrong field names)
## Skill chaining
- Skills pass data through conversation context, not files
- S1 output `recommended_program` → S2/S3 input `product`
- Each skill defines Input Schema and Output Schema for agent interop
## Commands
- `.claude/commands/new-skill.md` — scaffold a new skill from template
- `.claude/commands/review.md` — review skill quality against checklist
- `.claude/commands/test-skill.md` — run test prompts against a skill