89 lines
2.7 KiB
Markdown
89 lines
2.7 KiB
Markdown
# ink-skills
|
|
|
|
Ink-native skills: small on-demand behavior patches for operating Ink, defining
|
|
subagents, and creating permission-bearing external tools.
|
|
|
|
This repository owns reusable Ink judgment. Ink owns runtime enforcement and
|
|
policy. [`toolset`](https://git.tmk241.com/tmk241/toolset) owns compiled external
|
|
executables. Skills never grant authority by themselves.
|
|
|
|
## Install
|
|
|
|
Clone once, then symlink the skills you want:
|
|
|
|
```sh
|
|
git clone git@git.tmk241.com:tmk241/ink-skills.git
|
|
ink-skills/bin/ink-skills install
|
|
```
|
|
|
|
If the repository is already under `/opt/repositories`:
|
|
|
|
```sh
|
|
/opt/repositories/ink-skills/bin/ink-skills install
|
|
```
|
|
|
|
Install selected skills only:
|
|
|
|
```sh
|
|
ink-skills install ink-cli configure-ink-agent
|
|
```
|
|
|
|
Install into one project instead of the user catalogue:
|
|
|
|
```sh
|
|
ink-skills install --project /path/to/project configure-ink-agent
|
|
```
|
|
|
|
The installer is intentionally smaller than `npx skills`: no registry, package
|
|
manager, network access, copies, prompts, lockfile, or hidden state. It creates
|
|
absolute symlinks from `$HOME/.ink/skills` (or `$INK_SKILLS_HOME`) to this
|
|
checkout. Pulling the repository updates installed skills; restarting Ink freezes
|
|
the new bytes into the next startup snapshot.
|
|
|
|
`ink-skills list` emits TSV. `ink-skills --help` is the complete command manual.
|
|
Existing paths and foreign symlinks are refused rather than overwritten.
|
|
|
|
## Skills
|
|
|
|
| Skill | Job |
|
|
|---|---|
|
|
| `ink-cli` | Audit and explain the Ink host without crossing the host/guest boundary. |
|
|
| `configure-ink-agent` | Create or audit one Ink agent definition, access class, and relative policy conjunct. |
|
|
| `create-ink-agent-cli-tool` | Build one inspectable permission-bearing executable suitable for Ink policy admission. |
|
|
|
|
## Agent definitions and policy
|
|
|
|
Agent definitions live in `$INK_AGENT_HOME` (default `$HOME/.ink/agents`) or
|
|
project `.ink/agents` directories:
|
|
|
|
```text
|
|
name: Frontend specialist
|
|
model: design
|
|
access: write
|
|
policy: frontend.policy
|
|
|
|
Implement the bounded frontend task and return proof.
|
|
```
|
|
|
|
The policy path is relative to the definition. It is a normal Ink policy file and
|
|
narrows the frozen parent snapshot conjunctively. `access: read|write` selects
|
|
reader/writer scheduling; it does not grant commands or tools. Definitions and
|
|
policy files are frozen at startup, so restart Ink after changing either.
|
|
|
|
Use the `configure-ink-agent` skill for the complete decision boundary.
|
|
|
|
## Verify
|
|
|
|
```sh
|
|
sh -n bin/ink-skills
|
|
sh test/install-smoke.sh
|
|
```
|
|
|
|
## Refusals
|
|
|
|
- No npm package merely to create symlinks.
|
|
- No skill registry or update daemon.
|
|
- No policy mutation during installation.
|
|
- No bundled binaries; those belong in `toolset`.
|
|
- No automatic installation by Ink itself.
|