{"_id":"@aprimediet/self-taught","name":"@aprimediet/self-taught","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@aprimediet/self-taught","version":"1.0.0","type":"module","description":"Self-learning skill generator — reads your project, generates agentskills.io-compatible skills, and keeps them updated.","keywords":["pi-package"],"pi":{"extensions":["./index.ts"],"prompts":["./prompts"],"skills":[]},"peerDependencies":{"@earendil-works/pi-coding-agent":"*"},"gitHead":"30473abe7de26a768e3ac77f6727368786b9f88a","_id":"@aprimediet/self-taught@1.0.0","_nodeVersion":"24.18.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-sqgTZjNLKKQ11sxQAp1168rYd1QoVr20yBJ6zYBVm+Hwl9DKOTh4onz8fAft2hnwvW02mwSOTf8x0aDFMUGviQ==","shasum":"524001206d05cda9ec3d91f1e14e657fa2f03ea0","tarball":"https://registry.npmjs.org/@aprimediet/self-taught/-/self-taught-1.0.0.tgz","fileCount":13,"unpackedSize":95664,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDIfdA7L3CLocuCjwbUCvLgQiPJtCiWPY4fkq6bl02HZQIhAPc5GWpkE4z4rv54k4LQLJrDI8E+SNrsBD04FVFqf319"}]},"_npmUser":{"name":"aditya.prima","email":"aprimediet@gmail.com"},"directories":{},"maintainers":[{"name":"aditya.prima","email":"aprimediet@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/self-taught_1.0.0_1782400578263_0.8268447824412386"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-25T15:16:18.125Z","1.0.0":"2026-06-25T15:16:18.479Z","modified":"2026-06-25T15:16:18.682Z"},"maintainers":[{"name":"aditya.prima","email":"aprimediet@gmail.com"}],"description":"Self-learning skill generator — reads your project, generates agentskills.io-compatible skills, and keeps them updated.","keywords":["pi-package"],"readme":"# @aprimediet/self-taught\n\nSelf-learning skill generator for the pi coding agent.\n\nReads your project, generates [agentskills.io](https://agentskills.io/specification)-compatible skills,\nand keeps them updated across sessions.\n\n## Features\n\n- **Project Intelligence** — automatically analyzes tech stack, conventions, structure, and goals\n- **Memory Integration** — reads from `@aprimediet/memory` if available using the shared project marker\n- **Skill Generation** — determines which skills are useful and generates valid agentskills.io SKILL.md files\n- **Skill Updates** — detects project changes and updates generated skills\n- **Placement Choice** — asks whether to save as global (`~/.pi/agent/skills/`) or project (`.pi/skills/`) skill\n- **AGENTS.md Integration** — updates the project's AGENTS.md with a skills table\n- **Memory Persistence** — writes skill metadata to `@aprimediet/memory` if active\n\n## Quick Start\n\n```bash\n# Load the extension\npi -e ./extensions/self-taught/index.ts\n\n# Run the skill generation workflow\n/self-taught\n```\n\n## Commands\n\n| Command | Description |\n|---------|-------------|\n| `/self-taught` | Full workflow: analyze project, generate skills, update AGENTS.md |\n| `/self-taught check` | Quick check for project changes since last analysis |\n| `/self-taught status` | Show current state (profile, generated skills, memory) |\n| `/self-taught update` | Force re-generation of all skills (with confirmation) |\n| `/self-taught forget <name>` | Remove a generated skill |\n\n## Configuration File\n\nSelf-taught reads user preferences from `~/.pi/agent/self-taught.json` (same pattern as\n`@aprimediet/memory`). Config is re-read on every call — edits apply without reload.\n\n### Fields\n\n| Field | Type | Default | Description |\n|-------|------|---------|-------------|\n| `enabled` | boolean | `true` | Master switch |\n| `auto` | boolean | `true` | Lifecycle auto mode |\n| `scope` | string | `\"ask\"` | Default placement: `global`, `project`, or `ask` |\n| `model` | string | `\"\"` | Preferred model for skill generation (e.g. `\"claude-sonnet-4\"`) |\n\n**Precedence:** bundled default → `~/.pi/agent/self-taught.json` → CLI flags\n\n### Example\n\n```json\n{\n  \"enabled\": true,\n  \"auto\": true,\n  \"scope\": \"project\",\n  \"model\": \"claude-sonnet-4\"\n}\n```\n\nWhen `model` is set, the directive sent to the LLM includes a **Model Preference** section\nrecommending that model for the skill generation workflow.\n\n## Auto Mode (Lifecycle Injection)\n\nSelf-taught hooks into pi's lifecycle to automatically detect when project skills\nmight need updating — no manual `/self-taught check` needed.\n\n| Event | What Happens |\n|-------|-------------|\n| **Session start** (first run) | Suggests running `/self-taught` if project never analyzed |\n| **After agent completes work** | Detects project changes and notifies if skills should be refreshed |\n\nThe extension stays as the detection engine; the LLM decides whether to actually\nupdate skills — keeping the agent in control.\n\n## Flags\n\n| Flag | Description |\n|------|-------------|\n| `--self-taught-disabled` | Disable the extension entirely |\n| `--self-taught-scope <global\\|project\\|ask>` | Default skill placement (default: ask) |\n| `--self-taught-auto` | Enable automatic lifecycle hooks (default: true) |\n| `--self-taught-model <model>` | Preferred model for skill generation (overrides config file) |\n\n## Companion Extensions\n\nCompatible with `@aprimediet/memory`, `@aprimediet/minion`, and `@aprimediet/codewalker`.\nUses the shared `.pi/<project-id>.md` marker system — never creates its own marker.\n","readmeFilename":"README.md","_rev":"1-7c138175ed3e26069b105b5479f2c08c"}