@danievanzyl/code-skills

Pi extensions for shared status UI, background subagents, GitHub status, and terminal workflow

Packages

Package details

extension

Install @danievanzyl/code-skills from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@danievanzyl/code-skills
Package
@danievanzyl/code-skills
Version
0.1.55
Published
Oct 5, 2026
Downloads
745/mo · 503/wk
Author
danievanzyl
License
MIT
Types
extension
Size
85.5 KB
Dependencies
1 dependency · 5 peers
Pi manifest JSON
{
  "extensions": [
    "./extensions/status-window/index.ts",
    "./extensions/github-status-section.ts",
    "./extensions/picture-status-bar.ts",
    "./extensions/subagents/index.ts",
    "./extensions/lsp/index.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

Code Skills

Personal coding-agent platform for Claude Code and Pi.

Installation

Install skills with:

npx skills@latest add danievanzyl/code-skills

Install the Pi package from npm:

pi install npm:@danievanzyl/code-skills

Try the current Git checkout without installing:

pi --no-extensions -e .

The Pi package includes a shared fixed status window, GitHub status section, custom editor status bar, background subagents, and bundled local codebase analysis, GitHub research, and web research personas. The fixed dock requires Pi's fullscreen TUI mode, selectable through /settings.

Publishing the Pi package

The pi-package npm keyword makes the published package eligible for pi.dev/packages. Before the first release:

  1. Create or select the @danievanzyl npm organization/scope.
  2. Create the package with one manual OTP-authenticated release: npm login && npm publish --access public --otp=<code>.
  3. In the npm package settings, add a GitHub Actions trusted publisher for organization/user danievanzyl, repository code-skills, workflow release.yml, with no environment unless the workflow later uses one.
  4. Later merges to main synchronize package.json with the Claude plugin version and publish through short-lived OIDC credentials. No npm token is stored in GitHub; delete the old NPM_TOKEN secret after trusted publishing is configured.

Validate before publishing:

npm pack --dry-run
pi --approve --no-extensions -e . --list-models

Structure

Path Description
CLAUDE.md Global Claude instructions applied to all sessions
agents/ Claude sub-agent definitions
extensions/ Pi extensions and bundled Pi subagent personas
package.json npm/Pi package manifest
skills/ Reusable skill definitions — hand-authored + vendored (see below)
commands/ Custom slash commands
settings.json Claude Code settings
plugin.json Plugin manifest (this repo is the agentic-platform plugin)
.claude-plugin/ marketplace.json — the single-marketplace definition everything installs from
hooks/ Hook configurations
eval/ Run Evaluator — read-only post-PR analyzer; scores a Run (Trajectory + diff) against a versioned Rubric, posts a security-gated check (see eval/README.md + docs/adr/0001)
docs/adr/ Architecture decision records
scripts/ Maintenance tooling (sync-skills.sh, skill-sources.json)
.github/workflows/ CI — release.yml (version bump on merge to main) + sync-skills.yml (weekly upstream-skill sync PR) + tests.yml (eval/ unit tests + hook regression tests)
vendor/ Attribution + provenance for vendored skills (generated)
ralph/ RALPH — autonomous AFK loop runner; drives Claude Code over an issues/ queue until <promise>NO MORE TASKS</promise> (afk.sh loop / once.sh single pass + per-stack prompts)
tmux-workflow/ tmux + Ghostty session/worktree scripts (sessionizer, new-branch, close-branch with a PR-merged cleanup gate)

Agents

  • codebase-analyzer — Analyzes implementation details with file:line references
  • codebase-locator — Locates files and directories relevant to a feature
  • codebase-pattern-finder — Finds similar implementations and usage patterns
  • gh-search-researcher — Researches GitHub repos, PRs, issues via gh CLI
  • thoughts-analyzer — Deep dives on research topics
  • thoughts-locator — Discovers relevant documents in thoughts directories
  • web-search-researcher — Researches topics via web search
  • swift-expect — Swift development specialist

Skills as a supply chain

This repo is the single source of truth for everything that runs in a session — first-party agents, commands, hooks, and skills all live here. Trusted upstream skills aren't copy-pasted in; they're ingested via GitHub Actions as recorded snapshots: each sync pins the exact upstream commit and lands through a reviewed PR, so every dependency is versioned, attributed, and auditable.

To keep everything under one marketplace, skills from external providers are vendored into this plugin rather than installed as separate plugins. They land flat in skills/<name>/ so Claude Code's one-level skill auto-discovery registers them (a plugin.json skills array is not honored from a root plugin.json, and nested dirs are too deep to be discovered), and they invoke under this plugin's namespace, e.g. agentic-platform:tdd. Each vendored skill dir carries a hidden .vendored-from marker recording its source.

  • Config: scripts/skill-sources.json lists each provider (repo, the ref it tracks, categories to include, skills to exclude). Add a provider there — no code changes needed.
  • Sync: bash scripts/sync-skills.sh mirrors the configured skills into skills/<name>/ (writing a .vendored-from marker per skill) and the upstream LICENSE + provenance into vendor/<provider>/. Each run records the exact upstream commit SHA + date in vendor/<provider>/manifest.json and every .vendored-from marker — that recorded SHA is the pin and the audit trail (the configured ref may be a moving branch; what's committed here is always an exact snapshot). It's idempotent, and prune is marker-scoped — a re-sync only ever removes dirs carrying that provider's marker, never a hand-authored skill; name collisions with hand-authored skills are skipped. Vendored skill dirs are generated — do not hand-edit.
  • Automation: .github/workflows/sync-skills.yml runs the sync weekly (and on demand via Run workflow), opening/updating a single chore/sync-skills PR. Merging it cuts a release.

Current providers:

A vendored skill keeps its own upstream license (recorded in scripts/skill-sources.json, vendor/<provider>/, and — shipped with the skill — skills/<name>/LICENSE). This is distinct from the plugin's own MIT license in plugin.json, which does not relicense vendored content. herdr is AGPL-3.0-or-later; see ADR 0003.

Archify requirements and asset terms

skills/archify/ preserves the complete upstream executable package. Runtime commands require Node >=18, with no npm installation inside the skill directory. Full finalize requires an installed Chrome/Chromium for its real-browser gate. Run the CLI from your working directory using its installed path, as documented in Archify's instructions.

Upstream delivery behavior is unchanged: finalize and deliver optionally check an upstream update manifest. Set ARCHIFY_UPDATE_CHECK_DISABLED=1 to disable that networking and reminder-state writes. The checker does not install updates.

Archify's MIT license covers its own code, not all bundled fonts and brand assets. See third-party notices for asset licenses and trademark restrictions, including Vue artwork's non-commercial/share-alike terms, and the JetBrains Mono SIL Open Font License.

Credits

Many of the skills and commands in this config are based on HumanLayer's workflow patterns.