agent-profile-kit 0.204.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,127 @@
1
+ # Agent Profile Kit agent workflow
2
+
3
+ Use this workflow when helping a person author their Workspace and bind projects.
4
+
5
+ 1. Read this guide first. Then inspect the Workspace: start with `workspace.yaml`
6
+ and its schema version. A valid Workspace needs only that Manifest; missing
7
+ artifact directories are empty categories, and bootstrap files such as
8
+ `README.md`, `AGENTS.md`, and `.gitignore` are optional scaffolding from
9
+ `init`, not format requirements. Use `apkit init` for the fixed
10
+ default or `apkit init <workspace>` for one explicit absolute or
11
+ home-relative destination; missing and empty non-symlink destinations are
12
+ scaffolded, while valid existing Workspaces are adopted without source
13
+ changes. Inspect any present artifact directories next. Treat the Workspace
14
+ as the canonical source; do not infer reusable material from generated Host
15
+ output.
16
+ 2. Elicit the user's needs one decision at a time. Establish the kind of work,
17
+ the reusable facts or workflow they want, and whether existing material
18
+ already satisfies the need. Ask instead of inventing personal preferences,
19
+ project facts, Host preferences, credentials, or machine paths.
20
+ 3. Create the smallest useful artifact set. This release accepts Profile Context
21
+ and shared Skills for Antigravity, plus portable Context and Skills for Codex,
22
+ Claude Code, Grok, OpenCode, and Pi. Put standing facts in
23
+ Context Modules and reusable procedures in Skills. A Profile needs at least
24
+ one supported artifact (Context, Skills, or both); Context is not mandatory—a
25
+ Skills-only Profile is valid. For Skills that must not fire implicitly, use
26
+ `metadata.agent-profile-kit.model-invocation: disabled` (default is
27
+ `allowed`); do not leave Host-native `disable-model-invocation` in
28
+ Workspace source (Adapters project that field for Claude, Grok, and Pi). Profiles
29
+ contain exactly `id`, `context`, and `skills`. Do not create a new artifact merely because
30
+ a directory exists, and do not invent Agents, Hooks, or Tools
31
+ for this release.
32
+ 4. Preserve boundaries.
33
+ - **Workspace** owns reusable cross-project Profiles and artifacts as the
34
+ single canonical source. That includes Profile-selected material and
35
+ unselected universal artifacts (useful across every directory or kind of
36
+ work). Unselected does not mean “belongs in Host config.”
37
+ - **Local Configuration** (`~/.agents/agent-profile-kit/config.yaml`) owns
38
+ machine-local Project Bindings and the explicit Workspace path. Current
39
+ schema version 2 requires one existing absolute or home-relative Workspace
40
+ path and each binding names one existing project root, one Profile, and a
41
+ supported Host set (`antigravity`, `codex`, `claude`, `grok`, `opencode`, or `pi`); Host
42
+ order and duplicate entries normalize at ingestion. A version-1 configuration without
43
+ `workspace` is legacy migration input only; run `apkit init` before any desired-state
44
+ or binding-recording command.
45
+ - **Project repositories** own project facts and repository-owned instructions.
46
+ - **Hosts** own authentication, trust, approvals, plugins, sessions, and
47
+ Host preferences. User-managed native global Skill delivery (including
48
+ Host-root symlinks into Workspace source) is Host configuration, not
49
+ Agent Profile Kit–owned state: outside Project Bindings and Installation
50
+ Manifests; `update` / `uninstall` never adopt or remove those paths. v1 does
51
+ not manage global Host delivery. Hosts own Skill discovery, precedence,
52
+ deduplication, collision diagnostics, and resolution across project,
53
+ personal, package, plugin, extension, and compatibility sources.
54
+ - **Generated output** is disposable Installer-owned material inside bound
55
+ projects. Never copy it back into the Workspace as source.
56
+ - Same-identity Skill material outside an exact planned output destination is
57
+ Host Resolution, not an Agent Profile Kit blocker. Concrete Host settings
58
+ that disable planned output may warn; exact Output Ownership Conflicts and
59
+ unsupported capability remain blockers.
60
+ 5. Install Profiles into Projects—either hand-edit `config.yaml` and run
61
+ `apkit update`, or run `apkit install <profile> [project] --host <host>…`
62
+ (cwd when project is omitted; at least one explicit `--host` required),
63
+ which records the selection and installs the verified output in one
64
+ action after an interactive confirmation (`--auto-confirm` answers it
65
+ non-interactively). Do not
66
+ invent project roots or Host lists. Use only explicit paths the user confirms.
67
+ Reject wildcards, recursive scans, Host auto-detection, all-Hosts defaults,
68
+ per-session selection, and Profile version pins. Installing a different
69
+ Profile or Host set for the same project replaces the installation in the
70
+ same action; replacing or deleting independently changed generated files
71
+ needs `--replace-changed`/`--remove-changed`. After installing, continue
72
+ with validate/status/update. To remove selected installations, use
73
+ `apkit uninstall --here`, `uninstall --project <path>`, or `uninstall --all`
74
+ (explicit scope plus `--auto-confirm` non-interactively, with `--profile`,
75
+ `--host`, and `--remove-changed` as needed); it forgets each fully removed Project's
76
+ recorded selection so a later update does not reinstall it, matches
77
+ existing paths canonically, and permits missing-path recovery only by exact
78
+ authored spelling. To keep generated files in place instead, remove the
79
+ Project's entry from Local Configuration by hand and let the next update
80
+ reconcile the leftovers.
81
+ 6. Validate before updating. Context Modules use `id` frontmatter and flat
82
+ Profiles contain `id`, `context`, and `skills` only. Dependencies use
83
+ explicit `{ type, id }` references. Run `apkit validate`, review
84
+ the concise fleet outcome from `apkit status --all`, and ask before updating
85
+ all configured Project Bindings with `apkit update --all`. Use Project-scoped
86
+ `update [project]` only when the user intends one bound Project. Use
87
+ `apkit status --verbose` or `apkit update --verbose` when complete
88
+ per-output diagnostics, resolved artifact reasons, or composed Context are
89
+ needed. For automation, add `--json` on those two commands: exit `0` means
90
+ no tool error and no blockers (JSON `outcome` may still be `attention`),
91
+ exit `1` is a tool error, and exit `2` means blockers. The current Workspace
92
+ schema version is 1.
93
+ 7. After update, the user launches Antigravity, Codex, Claude, Grok, OpenCode, or Pi
94
+ natively in the bound project. Do not claim that Agent Profile Kit manages
95
+ Host authentication, trust, approvals, plugins, or sessions. Antigravity
96
+ bindings load deterministic always-on Context rules under `.agents/rules/`
97
+ and shared `.agents/skills/<Artifact ID>` packages after the user's native
98
+ trust step. OpenCode bindings load Profile Context via `.opencode/opencode.jsonc`
99
+ and `.agent-profile-kit/opencode/context.md` and shared `.agents/skills/<Artifact ID>`
100
+ packages after restarting running sessions. Pi bindings load the generated
101
+ `.pi/APPEND_SYSTEM.md` and shared `.agents/skills/<Artifact ID>` packages after
102
+ Pi's native trust boundary; packages, extensions, and other Skill sources coexist
103
+ through Pi Host Resolution. For non-Git projects, remind the user that Codex must
104
+ launch from the exact bound root.
105
+ 8. Use `apkit status` for the bound Project containing cwd, pass one explicit
106
+ Project root, or use `apkit status --all` for the fleet. Its concise result
107
+ reports all-current state when nothing needs action, labels change
108
+ paths with `+`, `~`, `-`, or `!` markers, caps long lists with a pointer to
109
+ `--verbose`, explains non-current states when they appear, preserves warnings
110
+ and blockers, and ends with one next-action line when useful (run the matching
111
+ update for pending work; resolve a blocker and retry status when blocked; omit
112
+ when already current). Pending Git exclusion work appears as one concise clause.
113
+ A ready fleet `status --all` recommends `update --all`; blocked `status` or
114
+ `update` retries that command after the blocker. Add
115
+ `--verbose` to distinguish current, stale, drifted, missing, and blocked
116
+ installations and inspect exact Git exclusion paths in the complete report.
117
+ `apkit uninstall` with an explicit scope removes only output whose Installation Receipt
118
+ and hashes prove Agent Profile Kit ownership and forgets each fully removed
119
+ Project's recorded selection; it preserves the Workspace,
120
+ unselected Projects, global Host configuration, and repository-owned files.
121
+ Never use hand-editing as a substitute for output cleanup: hand-editing the
122
+ selection out of Local Configuration keeps generated files in place for the
123
+ next update to reconcile, while `uninstall` deletes them.
124
+
125
+ If the user plans to publish the Workspace, remind them to review personal
126
+ content. Credentials are invalid in a Workspace regardless of publication
127
+ visibility.