awesome-agents 0.1.5 → 0.1.8
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.
- package/CHANGELOG.md +44 -0
- package/README.md +36 -9
- package/docs/cli.md +33 -7
- package/docs/plans/public-builder-profiles-agent-model-cards/plan.md +105 -0
- package/docs/product/README.md +2 -1
- package/docs/product/command-model.md +13 -12
- package/docs/product/harness-targets.md +50 -1
- package/docs/product/open-questions.md +6 -0
- package/docs/product/product-scope.md +4 -4
- package/docs/product/profile-source-format.md +29 -0
- package/docs/product/site-profiles-and-model-cards.md +135 -0
- package/package.json +4 -2
- package/scripts/release.js +0 -4
- package/src/cli.js +140 -10
- package/src/constants.js +10 -4
- package/src/help.js +13 -10
- package/src/installer.js +114 -11
- package/src/renderers.js +222 -3
- package/src/skills.js +397 -0
- package/src/source.js +26 -4
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,50 @@
|
|
|
2
2
|
|
|
3
3
|
This file is maintained by `npm run changelog` and `npm run release`. Release entries are generated from git commit history.
|
|
4
4
|
|
|
5
|
+
## 0.1.8 - 2026-07-08
|
|
6
|
+
|
|
7
|
+
Changes since `v0.1.6`.
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
|
|
11
|
+
- Add "What is an agent?" marketing page and link it site-wide (fa8255e)
|
|
12
|
+
- Add Goose to site harness surfaces (7a444cf)
|
|
13
|
+
- Add Goose harness support (#9) (c4049f2)
|
|
14
|
+
- Add public builder profile prototype (e78202e)
|
|
15
|
+
- Add plan for public-builder-profiles-agent-model-cards (64e254a)
|
|
16
|
+
- Add generated docs site (8eb21ba)
|
|
17
|
+
|
|
18
|
+
### Changed
|
|
19
|
+
|
|
20
|
+
- Prepare 0.1.7 release (342e93d)
|
|
21
|
+
- Link hosted artifacts for public-builder-profiles-agent-model-cards (0f76238)
|
|
22
|
+
- Update tenex-edge launch commands (cc304e2)
|
|
23
|
+
|
|
24
|
+
### Documentation
|
|
25
|
+
|
|
26
|
+
- rebuild /docs in the shadcn-docs layout (878803c)
|
|
27
|
+
|
|
28
|
+
## 0.1.7 - 2026-07-07
|
|
29
|
+
|
|
30
|
+
Changes since `v0.1.6`.
|
|
31
|
+
|
|
32
|
+
### Added
|
|
33
|
+
|
|
34
|
+
- Add generated docs site (8eb21ba)
|
|
35
|
+
|
|
36
|
+
### Changed
|
|
37
|
+
|
|
38
|
+
- Update tenex-edge launch commands (cc304e2)
|
|
39
|
+
|
|
40
|
+
## 0.1.6 - 2026-07-06
|
|
41
|
+
|
|
42
|
+
Changes since `v0.1.5`.
|
|
43
|
+
|
|
44
|
+
### Changed
|
|
45
|
+
|
|
46
|
+
- Align harness detection docs (70a1f8e)
|
|
47
|
+
- Improve agent install workflow (61470fc)
|
|
48
|
+
|
|
5
49
|
## 0.1.5 - 2026-07-06
|
|
6
50
|
|
|
7
51
|
Changes since `v0.1.4`.
|
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@ agent profile instead of a skill.
|
|
|
7
7
|
Supported sources are GitHub repos, Git URLs, or local checkouts that use the
|
|
8
8
|
agent-profile source layout. Profiles are read from YAML or Markdown files under
|
|
9
9
|
`agents/<slug>/`, adapted for the selected harness, and installed into the
|
|
10
|
-
right place for Codex, Claude Code, or
|
|
10
|
+
right place for Codex, Claude Code, OpenCode, Goose, or tenex-edge.
|
|
11
11
|
|
|
12
12
|
## Install And Run
|
|
13
13
|
|
|
@@ -15,7 +15,7 @@ Use the CLI with `npx`:
|
|
|
15
15
|
|
|
16
16
|
```bash
|
|
17
17
|
npx awesome-agents add owner/repo --agent triage-agent
|
|
18
|
-
npx awesome-agents add owner/repo --agent triage-agent --harness
|
|
18
|
+
npx awesome-agents add owner/repo --agent triage-agent --harness tenex-edge
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
From this repo during development:
|
|
@@ -43,19 +43,25 @@ Useful install options:
|
|
|
43
43
|
- `--agent <slug>` to select an agent profile, for example `--agent triage-agent`
|
|
44
44
|
- `--profile <slug>` or `--skill <slug>` as explicit profile aliases; `--skill`
|
|
45
45
|
is command-shape compatibility and does not mean the artifact is a skill
|
|
46
|
-
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
- omit a profile selector in an interactive terminal to choose source profiles
|
|
47
|
+
from a checkbox list; every profile is selected by default
|
|
48
|
+
- `--yes` to accept detected profile and harness selections without opening selectors
|
|
49
|
+
- `--harness codex|claude-code|opencode|goose|tenex-edge|*` to select target harnesses;
|
|
50
|
+
without it, the CLI detects harness CLIs on `PATH`; interactive multi-detect
|
|
51
|
+
opens a checkbox selector with every detected harness selected, and
|
|
52
|
+
noninteractive installs use every detected harness. If none are detected, pass
|
|
53
|
+
`--harness`.
|
|
49
54
|
- `--all` to install all profiles to all supported harnesses
|
|
50
55
|
- `--dry-run` to preview writes
|
|
51
|
-
- `--project` for project-level install where supported; Codex
|
|
56
|
+
- `--project` for project-level install where supported; Codex and tenex-edge install globally
|
|
52
57
|
- `--global` for user-level install
|
|
53
58
|
- `--list` to inspect available source profiles without installing
|
|
54
59
|
|
|
55
60
|
Human-readable output uses subtle ANSI color. Set `NO_COLOR=1` to disable color,
|
|
56
|
-
or pass `--json` for machine-readable output. After an install, the CLI
|
|
57
|
-
|
|
58
|
-
`codex --profile <profile
|
|
61
|
+
or pass `--json` for machine-readable output. After an install, the CLI groups
|
|
62
|
+
run commands by profile for target harness CLIs it finds on `PATH`, such as
|
|
63
|
+
`codex --profile <profile>`, `claude --agent <profile>`,
|
|
64
|
+
`tenex-edge launch <profile>`, or `goose session` then `@<profile>`.
|
|
59
65
|
|
|
60
66
|
## Harness Targets
|
|
61
67
|
|
|
@@ -64,12 +70,16 @@ Project installs write to:
|
|
|
64
70
|
- Codex: not supported; Codex profiles load from user config
|
|
65
71
|
- Claude Code: `.claude/agents/<profile>.md`
|
|
66
72
|
- OpenCode: `.opencode/agents/<profile>.md`
|
|
73
|
+
- Goose: `.agents/agents/<profile>.md`
|
|
74
|
+
- tenex-edge: not supported; tenex-edge agents are machine-local
|
|
67
75
|
|
|
68
76
|
Global installs write to:
|
|
69
77
|
|
|
70
78
|
- Codex: `$CODEX_HOME/<profile>.config.toml`, or `~/.codex/<profile>.config.toml`
|
|
71
79
|
- Claude Code: `$CLAUDE_HOME/agents/<profile>.md`, or `~/.claude/agents/<profile>.md`
|
|
72
80
|
- OpenCode: `$OPENCODE_CONFIG_DIR/agents/<profile>.md`, or `~/.config/opencode/agents/<profile>.md`
|
|
81
|
+
- Goose: `$GOOSE_HOME/agents/<profile>.md`, or `~/.agents/agents/<profile>.md`
|
|
82
|
+
- tenex-edge: `$TENEX_EDGE_HOME/agents/<profile>.json`, or `~/.tenex-edge/agents/<profile>.json`
|
|
73
83
|
|
|
74
84
|
The CLI keeps its own registry at `.awesome-agents/installed.json` for project
|
|
75
85
|
installs or `~/.awesome-agents/installed.json` for global installs. `list`,
|
|
@@ -95,6 +105,9 @@ agents/
|
|
|
95
105
|
agent.yaml
|
|
96
106
|
ops-agent/
|
|
97
107
|
agent.agf.yaml
|
|
108
|
+
skills/
|
|
109
|
+
gh-pages-publisher/
|
|
110
|
+
SKILL.md
|
|
98
111
|
scripts/
|
|
99
112
|
heartbeat.sh
|
|
100
113
|
references/
|
|
@@ -105,6 +118,19 @@ YAML profile files are preferred. The loader also accepts Markdown files with
|
|
|
105
118
|
YAML frontmatter for compatibility with tools that use `.agent.md`-style
|
|
106
119
|
profiles. Agent-owned `scripts/` and `references/` are installed into
|
|
107
120
|
`~/.agents/homes/<slug>/scripts` and `~/.agents/homes/<slug>/references`.
|
|
121
|
+
Profiles may also declare immediately relevant skills:
|
|
122
|
+
|
|
123
|
+
```yaml
|
|
124
|
+
skills:
|
|
125
|
+
- gh-pages-publisher
|
|
126
|
+
- pablof7z/tenex-edge basic-skill
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
Bare skill names are resolved from the profile directory, then the source
|
|
130
|
+
checkout, then `~/.agents/skills`. Source-qualified entries use the same source
|
|
131
|
+
plus skill selector shape as `npx skills add <source> --skill <skill>`.
|
|
132
|
+
Declared skills are copied into `~/.agents/homes/<slug>/skills/<skill>` and
|
|
133
|
+
listed with complete paths in the installed agent prompt.
|
|
108
134
|
|
|
109
135
|
## Examples
|
|
110
136
|
|
|
@@ -112,6 +138,7 @@ profiles. Agent-owned `scripts/` and `references/` are installed into
|
|
|
112
138
|
npx awesome-agents add owner/repo --list
|
|
113
139
|
npx awesome-agents add owner/repo --agent triage-agent
|
|
114
140
|
npx awesome-agents add owner/repo --agent triage-agent --harness codex --global
|
|
141
|
+
npx awesome-agents add owner/repo --agent triage-agent --harness tenex-edge
|
|
115
142
|
npx awesome-agents add owner/repo --all --dry-run
|
|
116
143
|
npx awesome-agents use owner/repo --agent triage-agent --harness claude-code
|
|
117
144
|
npx awesome-agents list --json
|
package/docs/cli.md
CHANGED
|
@@ -10,11 +10,18 @@
|
|
|
10
10
|
- `update` / `upgrade` reinstalls from the recorded source.
|
|
11
11
|
- `init` creates a profile source skeleton.
|
|
12
12
|
|
|
13
|
-
The CLI
|
|
14
|
-
|
|
15
|
-
default
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
The CLI stays scriptable by default. In an interactive terminal, `add` opens a
|
|
14
|
+
checkbox selector when no profile selector is provided; every source profile is
|
|
15
|
+
selected by default. When no target harness is provided, `add` detects supported
|
|
16
|
+
harness CLIs on `PATH`; multiple detected harnesses open a checkbox selector
|
|
17
|
+
with every harness selected by default. Non-TTY runs, `--json`, and `--yes` use
|
|
18
|
+
all detected selections without prompting. Installs default to project scope
|
|
19
|
+
where the selected harness supports project-local profiles. Codex and tenex-edge
|
|
20
|
+
are exceptions: Codex `--profile` loads named config layers from `CODEX_HOME`,
|
|
21
|
+
while tenex-edge agents live in its machine keystore under
|
|
22
|
+
`$TENEX_EDGE_HOME/agents/` or `~/.tenex-edge/agents/`. Goose uses
|
|
23
|
+
`~/.agents/agents/<profile>.md` (global) or `.agents/agents/<profile>.md`
|
|
24
|
+
(project).
|
|
18
25
|
|
|
19
26
|
## Source Resolution
|
|
20
27
|
|
|
@@ -51,20 +58,39 @@ generated profile is installed:
|
|
|
51
58
|
npx awesome-agents add owner/repo --agent triage-agent --harness opencode
|
|
52
59
|
```
|
|
53
60
|
|
|
54
|
-
For backward compatibility, `--agent codex`, `--agent claude-code`,
|
|
55
|
-
`--agent opencode` are still accepted as harness
|
|
61
|
+
For backward compatibility, `--agent codex`, `--agent claude-code`,
|
|
62
|
+
`--agent opencode`, `--agent goose`, and `--agent tenex-edge` are still accepted as harness
|
|
63
|
+
selectors.
|
|
64
|
+
|
|
65
|
+
When no harness selector is provided, `add` detects `codex`, `claude`,
|
|
66
|
+
`opencode`, `goose`, and `tenex-edge` on `PATH`. If none are found, the command fails and
|
|
67
|
+
asks for `--harness`.
|
|
68
|
+
|
|
69
|
+
When no profile selector is provided in an interactive terminal, `add` prompts
|
|
70
|
+
with a checkbox list of source profiles and their summaries. Pressing Enter
|
|
71
|
+
accepts the default of installing every listed profile. Scripts can use `--yes`,
|
|
72
|
+
`--json`, or a non-TTY stdin/stdout path to keep the same noninteractive default.
|
|
56
73
|
|
|
57
74
|
The `--skill` flag is accepted only as a command-shape alias for `--profile`.
|
|
58
75
|
Installed artifacts remain operational agent profiles.
|
|
59
76
|
|
|
77
|
+
Profiles may still declare immediately relevant skills in their source
|
|
78
|
+
definition. Those dependencies are copied into
|
|
79
|
+
`~/.agents/homes/<profile>/skills/<skill>` and appended to the installed prompt
|
|
80
|
+
with complete paths; this does not make the profile itself a skill.
|
|
81
|
+
|
|
60
82
|
After install, human-readable output should show the CLI command to run each
|
|
61
83
|
installed profile through any matching harness CLI found on `PATH`. Examples:
|
|
62
84
|
|
|
63
85
|
```bash
|
|
64
86
|
codex --profile triage-agent
|
|
65
87
|
claude --agent triage-agent
|
|
88
|
+
goose session
|
|
89
|
+
tenex-edge launch triage-agent
|
|
66
90
|
```
|
|
67
91
|
|
|
92
|
+
For Goose, start `goose session` and invoke the agent by name with `@<profile>`.
|
|
93
|
+
|
|
68
94
|
## Install Safety
|
|
69
95
|
|
|
70
96
|
Generated files contain the marker `Generated by awesome-agents`. The CLI refuses
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# Public Builder Profiles And Agent Model Cards
|
|
2
|
+
|
|
3
|
+
## Summary
|
|
4
|
+
|
|
5
|
+
Add the first public site slice for builder profiles and repository-scoped agent model cards, using GitHub identity assumptions and README-backed content where available while keeping the CLI source format repo-neutral.
|
|
6
|
+
|
|
7
|
+
## Boundaries
|
|
8
|
+
|
|
9
|
+
```mermaid
|
|
10
|
+
flowchart LR
|
|
11
|
+
GitHub[GitHub identity] --> Builder[Builder profile /handle]
|
|
12
|
+
Repo[Agent source repo] --> AgentYaml[agents/slug/agent.yaml]
|
|
13
|
+
Repo --> Readme[optional agents/slug/README.md]
|
|
14
|
+
AgentYaml --> Card[Model card route]
|
|
15
|
+
Readme --> Card
|
|
16
|
+
Builder --> Card
|
|
17
|
+
Card --> Install[npx awesome-agents add owner/repo --agent slug]
|
|
18
|
+
User[Logged-in user] --> Reviews[Reviews later persisted by backend]
|
|
19
|
+
Reviews --> Card
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Detailed Plan
|
|
23
|
+
|
|
24
|
+
## Summary
|
|
25
|
+
|
|
26
|
+
Implement the first public social-profile slice for `awesome-agents.com`: a builder profile route and repository-scoped agent model-card route. Keep it frontend-first and static-data-backed in this repo, while documenting the future backend contract for GitHub login, handle claiming, ownership verification, and reviews.
|
|
27
|
+
|
|
28
|
+
## Implementation Scope
|
|
29
|
+
|
|
30
|
+
1. Add site data structures for builders, repos, and agent cards.
|
|
31
|
+
2. Add `/pablof7z` style builder route support through `site/vercel.json` rewrites and a static page/controller.
|
|
32
|
+
3. Add `/pablof7z/touch-grass/chief-of-staff` style model-card route support.
|
|
33
|
+
4. Preserve the existing `/agents/:slug` page as compatibility or redirect-like behavior where practical.
|
|
34
|
+
5. Render optional README-backed model-card content when available in seeded data; render generated fallback sections when absent.
|
|
35
|
+
6. Add visible login/claim/review affordances as nonfunctional or mocked states only if clearly labeled by behavior, not by insecure fake auth.
|
|
36
|
+
7. Use the requested high-design frontend direction for the profile/model-card surfaces while keeping controls usable and text readable.
|
|
37
|
+
|
|
38
|
+
## Backend Boundary
|
|
39
|
+
|
|
40
|
+
Future GitHub auth should request basic profile and email access only, such as `read:user` plus `user:email`. The persisted user identity should include GitHub id, login, display name, avatar URL, and verified email where available. Handle claims are first-come-first-served. Repo ownership verification should be done through GitHub identity or GitHub App installation, not through user-entered claims alone. Reviews should require login; MVP has no spam filtering.
|
|
41
|
+
|
|
42
|
+
## Rollout
|
|
43
|
+
|
|
44
|
+
Ship the static route/content slice first. Keep existing directory links working. Once the UX holds up, add backend endpoints for auth callback, session, handle claims, repo imports, and review creation.
|
|
45
|
+
|
|
46
|
+
## Validation
|
|
47
|
+
|
|
48
|
+
Run `npm run lint` and `npm test` for the Node package. For site work, serve `site/` locally and inspect desktop and mobile routes with Playwright or a browser. Verify no horizontal overflow, route rewrites resolve, copy buttons still work, and old `/agents/:slug` pages are not broken.
|
|
49
|
+
|
|
50
|
+
## Rollback
|
|
51
|
+
|
|
52
|
+
Because the first slice is static, rollback is removing the new site page/controller/data entries and rewrites. CLI behavior should remain unaffected.
|
|
53
|
+
|
|
54
|
+
## Observability
|
|
55
|
+
|
|
56
|
+
No runtime observability is needed for the static slice. Future backend work should log OAuth callback failures, handle-claim conflicts, repo import failures, and review creation outcomes without logging tokens or private email values unnecessarily.
|
|
57
|
+
|
|
58
|
+
## Migration
|
|
59
|
+
|
|
60
|
+
No data migration is required for the first slice. Future migration should reserve existing GitHub usernames as default handles only when a user signs in or claims them, because handle policy is first-come-first-served.
|
|
61
|
+
|
|
62
|
+
## Risks
|
|
63
|
+
|
|
64
|
+
The main risk is making the prototype look like real auth or real persisted reviews. Keep those boundaries visually clear. The second risk is route collision between docs, assets, agent compatibility routes, and builder handles; rewrites should reserve known top-level paths before treating a path as a handle.
|
|
65
|
+
|
|
66
|
+
## Open Questions
|
|
67
|
+
|
|
68
|
+
Should launch support custom handles beyond GitHub usernames? Which metrics are platform-verified versus self-reported? What review moderation controls should be added once real volume exists?
|
|
69
|
+
|
|
70
|
+
## Rule And ADR Check
|
|
71
|
+
|
|
72
|
+
- Respects AGENTS.md by keeping runtime CLI behavior in `src/` untouched for the first site slice.
|
|
73
|
+
- Preserves source independence: no runtime CLI behavior, tests, or examples should hard-code one source repository.
|
|
74
|
+
- Matches product docs: README model-card content is optional, GitHub login requests basic profile plus email, reviews have no MVP spam filtering, and handles are first-come-first-served.
|
|
75
|
+
- Keeps examples that can write user directories behind dry-run or outside CLI examples.
|
|
76
|
+
|
|
77
|
+
## Possible Rule Or ADR Loosening
|
|
78
|
+
|
|
79
|
+
- No existing rule needs loosening for the frontend prototype.
|
|
80
|
+
- A future backend may need a new repository rule separating public site source fixtures from runtime CLI source fixtures so real showcased builders do not leak into CLI tests.
|
|
81
|
+
|
|
82
|
+
## Possible Rule Tightening
|
|
83
|
+
|
|
84
|
+
- Consider adding a rule that public site routes must prefer repo-neutral fixtures unless a page intentionally demonstrates a real claimed profile.
|
|
85
|
+
- Consider requiring auth-related docs to name requested OAuth scopes and stored identity fields before any backend implementation lands.
|
|
86
|
+
|
|
87
|
+
## Alternatives Considered
|
|
88
|
+
|
|
89
|
+
- Full backend now: enables real login and reviews, but expands scope into persistence, secrets, deployment, and security before route/content UX is validated.
|
|
90
|
+
- Only update product docs: too slow for the user's request to start building and does not test whether the social profile concept works on the site.
|
|
91
|
+
- Replace the existing directory with social profiles immediately: cleaner long-term shape, but risks breaking current static pages and install-directory behavior.
|
|
92
|
+
|
|
93
|
+
## Certainty
|
|
94
|
+
|
|
95
|
+
86 percent.
|
|
96
|
+
|
|
97
|
+
## Decision
|
|
98
|
+
|
|
99
|
+
ready
|
|
100
|
+
|
|
101
|
+
## Hosted Artifacts
|
|
102
|
+
|
|
103
|
+
- Plan page: https://pablof7z.github.io/awesome-agents/plans/public-builder-profiles-agent-model-cards/
|
|
104
|
+
|
|
105
|
+
- TTS audio: https://blossom.primal.net/2faa2fde8c6b962e1b629f2fb2e212aa6fd5e2e61b07e89e43c63475e0d8c195.mp3
|
package/docs/product/README.md
CHANGED
|
@@ -11,7 +11,8 @@ unless the user confirms them.
|
|
|
11
11
|
- `product-scope.md`: What `awesome-agents` is for and how it differs from skills.
|
|
12
12
|
- `command-model.md`: Command shape, `npx skills` parity, defaults, and scriptability.
|
|
13
13
|
- `profile-source-format.md`: Source repositories, canonical profiles, adapters, and install sources.
|
|
14
|
-
- `
|
|
14
|
+
- `site-profiles-and-model-cards.md`: Public builder profiles, agent model cards, GitHub login, and README-backed site content.
|
|
15
|
+
- `harness-targets.md`: Codex, Claude Code, OpenCode, Goose, and tenex-edge rendering/target behavior.
|
|
15
16
|
- `safety-and-publishing.md`: Install safety, registry behavior, verification, and npm/GitHub publish state.
|
|
16
17
|
- `open-questions.md`: Unresolved product questions.
|
|
17
18
|
|
|
@@ -24,9 +24,9 @@ The CLI supports:
|
|
|
24
24
|
language such as `npx awesome-agents add owner/repo --agent triage-agent`.
|
|
25
25
|
- `--profile <slug>` to select profiles explicitly.
|
|
26
26
|
- `--skill <slug>` as a compatibility alias, even though the artifact is a profile.
|
|
27
|
-
- `--harness <codex|claude-code|opencode|*>` to select target harnesses.
|
|
28
|
-
- `--agent <codex|claude-code|opencode|*>` remains accepted as a
|
|
29
|
-
selector when the value is a known harness or harness alias.
|
|
27
|
+
- `--harness <codex|claude-code|opencode|goose|tenex-edge|*>` to select target harnesses.
|
|
28
|
+
- `--agent <codex|claude-code|opencode|goose|tenex-edge|*>` remains accepted as a
|
|
29
|
+
legacy harness selector when the value is a known harness or harness alias.
|
|
30
30
|
- `--all` to install every profile.
|
|
31
31
|
- `--list` to inspect source profiles before installing.
|
|
32
32
|
|
|
@@ -36,16 +36,17 @@ Accepted implementation decision:
|
|
|
36
36
|
|
|
37
37
|
- Install scope defaults to project where the target harness supports project-local profiles.
|
|
38
38
|
- Codex is an exception because `codex --profile <name>` loads
|
|
39
|
-
`$CODEX_HOME/<name>.config.toml`.
|
|
40
|
-
|
|
39
|
+
`$CODEX_HOME/<name>.config.toml`. tenex-edge is also global because invitable
|
|
40
|
+
local agents live under `$TENEX_EDGE_HOME/agents/` or `~/.tenex-edge/agents/`.
|
|
41
41
|
- When no `--harness` or legacy harness-valued `--agent` is provided, the CLI
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
-
|
|
42
|
+
detects supported harness CLIs on `PATH` (`codex`, `claude`, `opencode`,
|
|
43
|
+
`goose`, and `tenex-edge`).
|
|
44
|
+
- If one harness is detected, install to it. If multiple harnesses are detected,
|
|
45
|
+
interactive installs open a checkbox selector with every detected harness
|
|
46
|
+
selected by default; noninteractive, `--json`, and `--yes` installs use every
|
|
47
|
+
detected harness.
|
|
48
|
+
- If no harness is detected, fail with a clear message asking for `--harness`.
|
|
49
|
+
- `--harness <harness>` (or a harness-valued `--agent`) overrides detection.
|
|
49
50
|
|
|
50
51
|
## Scriptability
|
|
51
52
|
|
|
@@ -9,6 +9,8 @@ Initial harness targets:
|
|
|
9
9
|
- Codex
|
|
10
10
|
- Claude Code
|
|
11
11
|
- OpenCode
|
|
12
|
+
- Goose
|
|
13
|
+
- tenex-edge
|
|
12
14
|
|
|
13
15
|
## Codex
|
|
14
16
|
|
|
@@ -53,8 +55,55 @@ Generated OpenCode agents install to:
|
|
|
53
55
|
|
|
54
56
|
OpenCode output is Markdown with frontmatter and a generated marker.
|
|
55
57
|
|
|
58
|
+
## Goose
|
|
59
|
+
|
|
60
|
+
Generated Goose custom agents install to:
|
|
61
|
+
|
|
62
|
+
- Project: `.agents/agents/<profile>.md`
|
|
63
|
+
- Global: `$GOOSE_HOME/agents/<profile>.md`, or `~/.agents/agents/<profile>.md`
|
|
64
|
+
|
|
65
|
+
Run with:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
goose session
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Then invoke the agent by name in the chat session:
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
@<profile>
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Goose output is Markdown with YAML frontmatter (`name`, `description`, optional
|
|
78
|
+
`model`) and a generated marker. The agent body reuses the Claude Code adapter
|
|
79
|
+
when a Goose-specific adapter is not present.
|
|
80
|
+
|
|
81
|
+
## tenex-edge
|
|
82
|
+
|
|
83
|
+
Generated tenex-edge agents install to:
|
|
84
|
+
|
|
85
|
+
- Project: not supported; tenex-edge agents are machine-local
|
|
86
|
+
- Global: `$TENEX_EDGE_HOME/agents/<profile>.json`, or `~/.tenex-edge/agents/<profile>.json`
|
|
87
|
+
|
|
88
|
+
Run with:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
tenex-edge launch <profile>
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
The generated JSON is a tenex-edge local agent keystore entry with:
|
|
95
|
+
|
|
96
|
+
- a generated Nostr keypair, preserved across reinstalls
|
|
97
|
+
- `commands` entries with launch argv that load the installed profile, such as
|
|
98
|
+
`codex --profile <profile>` or `claude --agent <profile>`
|
|
99
|
+
- an inline Claude `agent` definition passed by tenex-edge as `--agents` for
|
|
100
|
+
the generated fallback command when no Claude Code profile command is present
|
|
101
|
+
- a byline derived from the profile summary
|
|
102
|
+
|
|
56
103
|
## Adapter Gaps
|
|
57
104
|
|
|
58
105
|
Some source repositories may provide Codex adapters first. Claude Code and
|
|
59
106
|
OpenCode use generated defaults unless a source repository adds native adapters
|
|
60
|
-
for those harnesses.
|
|
107
|
+
for those harnesses. Goose reuses the Claude Code adapter when no Goose-specific
|
|
108
|
+
adapter is present. tenex-edge uses a native adapter when present, otherwise it
|
|
109
|
+
reuses the Claude Code adapter before falling back to the base profile.
|
|
@@ -14,6 +14,12 @@ These are unresolved product questions for `awesome-agents`.
|
|
|
14
14
|
- Should remote installs record commit pins or lockfiles for reproducible updates?
|
|
15
15
|
- Should there eventually be a registry or curated index of profile sources?
|
|
16
16
|
|
|
17
|
+
## Site And Identity
|
|
18
|
+
|
|
19
|
+
- Should public builder handles always begin as GitHub usernames, or should
|
|
20
|
+
custom handles be supported from the start?
|
|
21
|
+
- What moderation or spam controls should be added after real review volume?
|
|
22
|
+
|
|
17
23
|
## Harness Support
|
|
18
24
|
|
|
19
25
|
- Should future versions also support Codex custom-agent files in addition to
|
|
@@ -9,7 +9,7 @@ These notes capture what `awesome-agents` is and why it exists.
|
|
|
9
9
|
- Its command structure should mirror `npx skills`, but for agent profiles.
|
|
10
10
|
- It should install profiles from any explicit source repository that follows
|
|
11
11
|
the `agents/<slug>/agent.yaml` source layout.
|
|
12
|
-
-
|
|
12
|
+
- Harness targets are Codex, Claude Code, OpenCode, Goose, and tenex-edge.
|
|
13
13
|
- The package should be published after the scaffold works.
|
|
14
14
|
|
|
15
15
|
## Product Boundary
|
|
@@ -42,6 +42,6 @@ Product correction:
|
|
|
42
42
|
source resolution itself.
|
|
43
43
|
- Source repositories should use one agent definition format per agent directory:
|
|
44
44
|
`agents/<slug>/agent.yaml` plus colocated support material.
|
|
45
|
-
- `awesome-agents` installs
|
|
46
|
-
`~/.agents/homes/<slug>/` and transcribes the agent
|
|
47
|
-
harness.
|
|
45
|
+
- `awesome-agents` installs local support material and declared immediately
|
|
46
|
+
relevant skills into `~/.agents/homes/<slug>/` and transcribes the agent
|
|
47
|
+
definition to the target harness.
|
|
@@ -10,6 +10,8 @@ The source format is intentionally repo-neutral:
|
|
|
10
10
|
agents/
|
|
11
11
|
<profile>/
|
|
12
12
|
agent.yaml
|
|
13
|
+
README.md # optional site model-card body
|
|
14
|
+
skills/
|
|
13
15
|
scripts/
|
|
14
16
|
references/
|
|
15
17
|
```
|
|
@@ -27,6 +29,31 @@ agents/<profile>/scripts/*
|
|
|
27
29
|
agents/<profile>/references/*
|
|
28
30
|
```
|
|
29
31
|
|
|
32
|
+
Optional site-facing documentation lives at:
|
|
33
|
+
|
|
34
|
+
```text
|
|
35
|
+
agents/<profile>/README.md
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
This README is intended for the public model-card page on
|
|
39
|
+
`awesome-agents.com/<handle>/<repo>/<profile>`. It complements the runtime
|
|
40
|
+
profile definition; it should not be treated as the installable prompt. It is
|
|
41
|
+
not required for a valid source profile.
|
|
42
|
+
|
|
43
|
+
Immediately relevant skills can be declared in the profile definition:
|
|
44
|
+
|
|
45
|
+
```yaml
|
|
46
|
+
skills:
|
|
47
|
+
- gh-pages-publisher
|
|
48
|
+
- pablof7z/tenex-edge basic-skill
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
Bare skill names resolve from the profile directory, then the source checkout,
|
|
52
|
+
then from `~/.agents/skills`. Source-qualified entries use the same source plus
|
|
53
|
+
skill selector shape as `npx skills add <source> --skill <skill>`. Installed
|
|
54
|
+
skills are copied into `~/.agents/homes/<profile>/skills/<skill>` and appended
|
|
55
|
+
to the rendered agent prompt with complete paths.
|
|
56
|
+
|
|
30
57
|
## Profile Files
|
|
31
58
|
|
|
32
59
|
YAML profile files are preferred. The loader should support a pragmatic subset
|
|
@@ -43,6 +70,8 @@ The CLI should preserve canonical profile content and generate harness-specific
|
|
|
43
70
|
Agent-owned scripts and references should be installed into
|
|
44
71
|
`~/.agents/homes/<profile>/scripts` and
|
|
45
72
|
`~/.agents/homes/<profile>/references`.
|
|
73
|
+
Declared skills should be installed into
|
|
74
|
+
`~/.agents/homes/<profile>/skills/<skill>`.
|
|
46
75
|
|
|
47
76
|
Profile source files are intentionally under `agents/`, not `skills/`, because
|
|
48
77
|
the source format models agent profiles separately from loadable skills.
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
# Site Profiles And Model Cards
|
|
2
|
+
|
|
3
|
+
These notes capture the requested direction for the public
|
|
4
|
+
`awesome-agents.com` experience.
|
|
5
|
+
|
|
6
|
+
## Core Direction
|
|
7
|
+
|
|
8
|
+
The site should become a social profile and discovery index for people who
|
|
9
|
+
build with agent fleets, not only a static CLI directory.
|
|
10
|
+
|
|
11
|
+
Primary route shape:
|
|
12
|
+
|
|
13
|
+
```text
|
|
14
|
+
awesome-agents.com/<handle>
|
|
15
|
+
awesome-agents.com/<handle>/<repo>/<agent-slug>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
`/<handle>` is a builder profile: a public place to show the operator behind the
|
|
19
|
+
agents. It should include owned profiles, agent fleets, source repos, installs,
|
|
20
|
+
shipped examples, reviews, and activity.
|
|
21
|
+
|
|
22
|
+
This page should feel closer to a GitHub profile than a landing page. The core
|
|
23
|
+
content is profile information: about details, connected repos, agent templates,
|
|
24
|
+
recent activity, artifacts created with specific fleets, reviews,
|
|
25
|
+
discussion/forum participation, and cross-references between builders, agents,
|
|
26
|
+
and artifacts.
|
|
27
|
+
|
|
28
|
+
`/<handle>/<repo>/<agent-slug>` is an agent template page, comparable to a
|
|
29
|
+
Hugging Face model card. It should show what the agent is, why it exists, how to
|
|
30
|
+
install it, where its source lives, and what other users say about it.
|
|
31
|
+
|
|
32
|
+
This page should feel closer to a repository page than a marketing page. Users
|
|
33
|
+
should be able to inspect the template, install or download it, eventually fork
|
|
34
|
+
it, comment on it, review it, and see artifacts shared by other builders who
|
|
35
|
+
used or adapted the agent.
|
|
36
|
+
|
|
37
|
+
Profile and model-card navigation should be route-backed subpages, not in-page
|
|
38
|
+
anchor tabs. For example:
|
|
39
|
+
|
|
40
|
+
```text
|
|
41
|
+
awesome-agents.com/<handle>/agents
|
|
42
|
+
awesome-agents.com/<handle>/artifacts
|
|
43
|
+
awesome-agents.com/<handle>/activity
|
|
44
|
+
awesome-agents.com/<handle>/<repo>/<agent-slug>/reviews
|
|
45
|
+
awesome-agents.com/<handle>/<repo>/<agent-slug>/forks
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
## Agent Model Card Source
|
|
49
|
+
|
|
50
|
+
Agent source repositories should support optional site-facing README content
|
|
51
|
+
next to the runtime profile definition:
|
|
52
|
+
|
|
53
|
+
```text
|
|
54
|
+
agents/
|
|
55
|
+
<agent-slug>/
|
|
56
|
+
agent.yaml
|
|
57
|
+
README.md # optional site model-card body
|
|
58
|
+
scripts/
|
|
59
|
+
references/
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
`agents/<agent-slug>/README.md` is not required. When present, it is the
|
|
63
|
+
canonical source for the public model-card body on the site. It complements
|
|
64
|
+
`agent.yaml`; it is not the runtime prompt. The YAML profile remains the
|
|
65
|
+
installable agent definition, while the README can explain intended use,
|
|
66
|
+
operating model, examples, limitations, changelog notes, and other human-facing
|
|
67
|
+
documentation.
|
|
68
|
+
|
|
69
|
+
The site should render this README on the model-card route when it exists:
|
|
70
|
+
|
|
71
|
+
```text
|
|
72
|
+
awesome-agents.com/<handle>/<repo>/<agent-slug>
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
When no README exists, the site should still allow the agent page and generate a
|
|
76
|
+
fallback model card from `agent.yaml` metadata and profile content.
|
|
77
|
+
|
|
78
|
+
## Identity And Login
|
|
79
|
+
|
|
80
|
+
GitHub login is the preferred starting point.
|
|
81
|
+
|
|
82
|
+
Initial identity assumptions:
|
|
83
|
+
|
|
84
|
+
- The public handle can default to the GitHub username.
|
|
85
|
+
- Requested GitHub OAuth access should be limited to basic user profile and
|
|
86
|
+
email address information, such as `read:user` plus `user:email`.
|
|
87
|
+
- GitHub auth can verify repo ownership and let builders claim/import agent
|
|
88
|
+
source repositories.
|
|
89
|
+
- Repo and agent routes should be derived from GitHub ownership plus the
|
|
90
|
+
`agents/<agent-slug>/` layout.
|
|
91
|
+
- Reviews should require a logged-in identity.
|
|
92
|
+
- Public handle claims are first-come-first-served.
|
|
93
|
+
|
|
94
|
+
## Social Surface
|
|
95
|
+
|
|
96
|
+
Builder profiles should make agent operation legible and impressive without
|
|
97
|
+
turning into a conventional resume page.
|
|
98
|
+
|
|
99
|
+
Useful signals:
|
|
100
|
+
|
|
101
|
+
- published agent templates;
|
|
102
|
+
- repos connected to the builder;
|
|
103
|
+
- recent activity related to agent work;
|
|
104
|
+
- artifacts the builder publishes, including which fleet produced them;
|
|
105
|
+
- fleet or team size where the builder chooses to disclose it;
|
|
106
|
+
- installs, stars, reviews, and shipped samples;
|
|
107
|
+
- badges for verified GitHub ownership or claimed source repos;
|
|
108
|
+
- featured agents and examples of work produced with them;
|
|
109
|
+
- discussion/forum participation that can reference builders, repos, agents,
|
|
110
|
+
and artifacts.
|
|
111
|
+
|
|
112
|
+
Useful profile metrics:
|
|
113
|
+
|
|
114
|
+
- agent templates published or maintained;
|
|
115
|
+
- installs across templates and source repos;
|
|
116
|
+
- forks, remixes, and adaptations by other builders;
|
|
117
|
+
- artifacts shipped with explicit fleet tags;
|
|
118
|
+
- average review score from logged-in users;
|
|
119
|
+
- discussion karma or useful answers;
|
|
120
|
+
- verified source ownership and verified artifact links.
|
|
121
|
+
|
|
122
|
+
Agent model cards should support reviews and reputation signals so users can
|
|
123
|
+
judge an agent before installing it.
|
|
124
|
+
|
|
125
|
+
The first release should not include spam filtering for reviews. Reviews can
|
|
126
|
+
ship with logged-in identity as the baseline constraint, then add moderation
|
|
127
|
+
controls only after there is real usage pressure.
|
|
128
|
+
|
|
129
|
+
## Open Questions
|
|
130
|
+
|
|
131
|
+
- Which metrics are verified by the platform versus self-reported by builders?
|
|
132
|
+
- Should custom handles be supported at launch, or should the first version use
|
|
133
|
+
GitHub usernames only?
|
|
134
|
+
- What later moderation or spam controls are needed once real review volume
|
|
135
|
+
exists?
|