mirror of
https://github.com/alirezarezvani/claude-skills.git
synced 2026-10-11 03:37:58 +00:00
Audit findings: - senior-fullstack / senior-frontend / senior-backend SKILL.md files were generic role catalogs with no opinionated workflow, no customization surface, and no cross-agent invocation contract. - A 4-person SaaS startup and a 200-engineer enterprise read identical recommendations. - Other agents/skills had no typed surface to orchestrate fullstack / frontend / backend lenses. Per-skill additions (21 new files: 7 x 3 skills): - scripts/<role>_decision_engine.py - stdlib-only deterministic profile picker. Refuses to recommend without Karpathy-#1 core assumptions. Surfaces kill criteria. Names human approver chain (never auto-approves). - profiles/*.json x 4 per skill (12 total) - JSON customization surface. Users copy one to <your-org>.json to override defaults. - references/forcing_questions.md - 7 Matt Pocock forcing questions per skill (21 total) with recommended answer + canon citation + kill criterion. - references/composition_map.md - explicit routing into POWERFUL-tier specialists (api-design-reviewer, database-designer, slo-architect, performance-profiler, a11y-audit, epic-design, apple-hig-expert, etc.). Three orchestrator agents (context: fork): - agents/engineering/cs-fullstack-engineer.md - agents/engineering/cs-frontend-engineer.md - agents/engineering/cs-backend-engineer.md Invokable by other agents via Agent(subagent_type="cs-<role>-engineer", ...). Four slash commands: - /cs:fullstack-review, /cs:frontend-review, /cs:backend-review - /cs:engineer-grill - cross-role 21-question forcing-question runner Augmented SKILL.md files (additive only - Karpathy #3 surgical): Each gained 5 new sections: Assumptions & Verifiable Success Criteria (Karpathy #1+#4), Customization profiles, Composition map, Forcing-question library, Invocation from other agents and skills. Verification: - 12/12 profile JSON files parse cleanly - 3/3 decision engines pass --help and --sample, exit 0 - 3/3 cs-* agents have valid YAML + context: fork - 3/3 agent paths resolve from agents/engineering/ - 3/3 commands reference the correct cs-* agent - 69/69 plugin.json files pass check_plugin_json.py - Existing SKILL.md content unchanged (additive edits only) Versions: engineering-team plugin 2.2.3 -> 2.8.1; marketplace entry 2.8.1. https://claude.ai/code/session_01UyWs4rKccdxUWFcWi6Y8Ly
71 lines
2.7 KiB
JSON
71 lines
2.7 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft-07/schema#",
|
|
"profile_name": "saas-startup",
|
|
"description": "Customer-facing SaaS product, < 10 engineers, < $10M ARR. Pre-product-market-fit or just past it. Cadence: daily+. Cloud ceiling: $3-8K/mo. Hiring against the stack via standard recruiter pipeline.",
|
|
"version": "1.0.0",
|
|
"constraints": {
|
|
"team_size_max": 10,
|
|
"team_size_year_one_max": 25,
|
|
"deployment_cadence": "daily-or-per-pr",
|
|
"cloud_budget_monthly_usd_ceiling": 8000,
|
|
"user_facing": true,
|
|
"data_sensitivity_tier": "pii-only"
|
|
},
|
|
"stack_recommendations": {
|
|
"primary": "next-app-router-postgres",
|
|
"frontend": {
|
|
"framework": "next.js-14+",
|
|
"rendering": "rsc-default",
|
|
"styling": "tailwind",
|
|
"state": "server-state-via-rsc-plus-zustand-for-client"
|
|
},
|
|
"backend": {
|
|
"pattern": "modular-monolith",
|
|
"language": "typescript-or-python",
|
|
"framework_options": ["next-api-routes", "fastapi", "express"],
|
|
"database": "postgresql",
|
|
"cache": "redis-optional",
|
|
"queue": "defer-until-needed"
|
|
},
|
|
"infrastructure": {
|
|
"hosting": ["vercel", "fly.io", "render", "railway"],
|
|
"database_hosting": ["neon", "supabase", "rds-postgres-small"],
|
|
"observability": "single-tool-only-sentry-or-axiom",
|
|
"feature_flags": "growthbook-self-host-or-defer"
|
|
}
|
|
},
|
|
"anti_recommendations": {
|
|
"microservices": "kill — wrong team-size shape",
|
|
"kubernetes": "kill — Vercel/Fly already manages the runtime",
|
|
"event-sourcing": "kill — pre-PMF YAGNI",
|
|
"graphql-federation": "kill — no second team to federate with",
|
|
"kafka": "kill — Postgres LISTEN/NOTIFY or PgQ handles the load at this scale",
|
|
"service-mesh": "kill — no services to mesh"
|
|
},
|
|
"success_thresholds": {
|
|
"p50_api_latency_ms": 100,
|
|
"p95_api_latency_ms": 300,
|
|
"p99_api_latency_ms": 800,
|
|
"frontend_lcp_ms_mobile_4g": 2500,
|
|
"frontend_inp_ms": 200,
|
|
"uptime_target": 0.995,
|
|
"deployment_time_minutes_max": 15,
|
|
"test_coverage_min": 0.6
|
|
},
|
|
"ci_cd": {
|
|
"platform": "github-actions",
|
|
"stages": ["lint", "typecheck", "test", "build", "deploy-preview", "deploy-prod"],
|
|
"gates": ["test-pass", "no-critical-deps-vulns"]
|
|
},
|
|
"named_approver_chain": {
|
|
"stack_change": "tech-lead",
|
|
"production-data-migration": "tech-lead + on-call",
|
|
"external-service-add": "tech-lead + cfo (cost-aware)"
|
|
},
|
|
"canon_references": [
|
|
"Will Larson, An Elegant Puzzle (2019) — team-size-to-architecture mapping",
|
|
"Sam Newman, Building Microservices 2e (2021), ch. 1 — MonolithFirst",
|
|
"Tomasz Tunguz, Cloud Cost Discipline essays (2020-2024)",
|
|
"DORA State of DevOps 2023 — Elite cadence on monolith outperforms Medium cadence on microservices"
|
|
]
|
|
}
|