python-conventions

Solid

Python and shell-script conventions for CAST projects. Load when writing, reviewing, or debugging Python scripts, hook scripts, or files under scripts/ or bin/. Covers stdlib-only policy, DB access patterns, exit codes, idempotency, stdin parsing, and hook script conventions.

AI & Automation 8 stars 1 forks Updated today MIT

Install

View on GitHub

Quality Score: 79/100

Stars 20%
32
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
71
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Python Conventions - Stdlib only unless task spec allows pip installs - DB access: use `scripts/cast_db.py` abstraction (`db_write`, `db_query`, `db_execute`) - DB path: `os.environ.get('CAST_DB_PATH', os.path.expanduser('~/.claude/cast.db'))` - Error handling: catch specific exceptions, log to `~/.claude/logs/`, never crash the hook pipeline - Schema changes: use `CREATE TABLE IF NOT EXISTS` and `ALTER TABLE ... ADD COLUMN` with try/except for idempotency - Stdin parsing: `json.loads(os.environ.get("CAST_INPUT", ""))` pattern with try/except - Use f-strings for string formatting - Type hints on function signatures where practical - No global state — each script execution is independent ## Script File Conventions - Python scripts: use stdlib only unless the task spec explicitly allows pip installs - DB access: always use `os.environ.get('CAST_DB_PATH', os.path.expanduser('~/.claude/cast.db'))` for path resolution - Exit codes: 0 = success, 1 = error; print errors to stderr, results to stdout - Idempotency: migration scripts must be safe to run multiple times (check before CREATE/ALTER) - All new scripts written here must ALSO be committed to the repo `scripts/` directory — never write only to `~/.claude/scripts/` - Hook scripts that emit events: use `cast_emit_event` from `~/.claude/scripts/cast-events.sh` - JSON output scripts: always emit valid JSON even on error (`{"error": "..."}`)

Details

Author
ek33450505
Repository
ek33450505/claude-agent-team
Created
5 months ago
Last Updated
today
Language
Shell
License
MIT

Integrates with

Similar Skills

Semantically similar based on skill content — not just same category