-
Notifications
You must be signed in to change notification settings - Fork 9
Key Facts
Rick Hightower edited this page Jan 29, 2026
·
1 revision
Critical information about the Skilz CLI project that agents need to remember.
| Fact | Value |
|---|---|
| Project Name | Skilz CLI |
| Repository | github.com/spillwave/skilz-cli |
| Primary Language | Python 3.10+ |
| Package Manager | Poetry |
| Task Runner | Taskfile (Go-based) |
| Test Framework | pytest |
| Test Coverage | 92%+ |
- Python 3.10+
- Poetry
- Task (optional but recommended)
- Git
task test # Run all tests
task check # Full quality checks (lint, typecheck, test)
task coverage # Tests with coverage report
task lint # Run ruff linter
task typecheck # Run mypy- Parse skill ID from user input
- Look up in registry (
.skilz/registry.yamlor~/.skilz/registry.yaml) - Clone/fetch Git repository to cache
- Checkout pinned SHA
- Copy skill files to agent's skill directory
- Write manifest file
| Agent | Skill Directory |
|---|---|
| Claude Code |
~/.claude/skills/ or .claude/skills/
|
| OpenCode | ~/.config/opencode/skills/ |
Single Source of Truth: pyproject.toml line 7
| File | Role |
|---|---|
pyproject.toml |
Primary version definition (edit this one) |
src/skilz/__init__.py |
Dynamic detection via importlib.metadata.version("skilz")
|
Release Process: Only update pyproject.toml. The Python module automatically reads the version from package metadata at runtime.
Previous Bug (Fixed in 1.7): Before dynamic detection, version was hardcoded in both files and they would get out of sync, causing skilz --version to show wrong version.
| Path | Purpose |
|---|---|
src/skilz/ |
Main package source |
tests/ |
Test suite |
.skilz/ |
Skill templates |
.specify/ |
SDD specifications |
.speckit/ |
Spec-kit configuration |
docs/project_notes/ |
Project memory (THIS FILE) |
- Phase 1: Core Installer (registry, install, manifest)
- Phase 2: Developer Experience (92% coverage, docs, Taskfile)
- Phase 3: Plugin Support (marketplace.json, extended registry)
- Phase 4: Additional agents (Cursor, Codex, Gemini)
- Phase 5: Symlink mode for local development
- Specs in
.specify/directory - Use
/sddskill for spec workflows - All features should have specs before implementation
- Tickets tracked in JIRA
- Use
/jiraskill for ticket operations - Architect agent manages ticket lifecycle
Before any PR:
-
task checkmust pass - Coverage must stay at 92%+
- All new features need tests
- Documentation updated if applicable
- ✅ Version bumped to 1.9.0 in pyproject.toml
- ✅ Documentation updated (USER_MANUAL.md, DEPLOY_PYPI.md)
- ✅ CHANGELOG.md updated with 1.9.0 entry
- ✅ All tests passing
- ✅ Local build verified
- ✅ List command enhancements (Agent column, --all flag)
- ✅ CLI help discoverability improvements
- ✅ Visit command URL format fix
- ✅ Gemini CLI native support
- ✅ NEW/LEGACY/SLUG format support
- ✅ Universal agent custom config
Last Updated: 2026-01-21