Skip to content

Commit b351f28

Browse files
authored
feat: org architecture, docs hub, and data refresh (#4)
* fix(data): update stale skills, plugin counts, and hero stats Add 10 missing skills (debate, enhance-orchestrator, enhance-agent-prompts, enhance-claude-memory, perf-baseline-manager, perf-benchmarker, perf-profiler, maintain-cross-platform, web-auth, web-browse). Update plugin agent/skill counts to match actual repos. Update hero stats to 14 plugins, 43 agents, 38 skills, 230 lint rules. Mark web-ctl as active (no longer coming soon). * fix(config): change base URL from /agent-sh.dev/ to / The site will be served at the org root (agent-sh.github.io) rather than a project subdirectory. * docs: add org architecture decision record Documents URL strategy, framework choices, design token ownership, and future plans for unified search and shared components. * feat(nav): add Docs link to navigation and footer Add Docs link between Products dropdown and Plugins in desktop nav, mobile menu, and footer Resources column. * feat(pages): add documentation hub page Central docs page linking to agentsys, agnix, and web-ctl documentation sites, plus resources section with plugin catalog, skills directory, and GitHub org links. * fix(plugins): update plugin count from 13 to 14 * fix: address review findings - stale counts, a11y, consistency - plugins.json: fix skill/agent counts (ship: 1 skill, audit-project: 1 skill, agnix: 1 agent) - skills.json: remove orphan skills (enhance-agents, enhance-claudemd, baseline, benchmark, profile), fix maintain-cross-platform plugin ref - index.astro: derive counts from data, fix em-dashes, fix title separator - docs.astro: import data for dynamic counts, extract inline styles, fix title separator, add a11y text for external links - plugins.astro: use dynamic plugin count, fix title separator - Footer.astro: wrap link groups in nav elements with aria-label for a11y - main.css: add footer nav flex layout for new nav wrappers * fix: remove internal maintain-cross-platform skill from public catalog * docs: replace stale Starlight template README with actual project description
1 parent 233ba77 commit b351f28

File tree

11 files changed

+281
-94
lines changed

11 files changed

+281
-94
lines changed

ORG_ARCHITECTURE.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Org Architecture: Documentation & Website Strategy
2+
3+
Architecture decision record for the agent-sh organization's web presence and documentation.
4+
5+
## Decisions
6+
7+
### URL Structure
8+
9+
| Site | URL | Purpose |
10+
|------|-----|---------|
11+
| Landing page | `agent-sh.github.io` (root) | Org overview, plugin catalog, skills directory |
12+
| agentsys docs | `agent-sh.github.io/agentsys/` | Product docs for the agent runtime |
13+
| agnix docs | `agent-sh.github.io/agnix/` | Product docs for the config linter |
14+
15+
Custom domain (`agent-sh.dev`) is a future step - configure via GitHub Pages CNAME when ready.
16+
17+
### Frameworks
18+
19+
| Site | Framework | Reason |
20+
|------|-----------|--------|
21+
| Landing page | Astro 5 | Static-first, zero JS by default, component islands |
22+
| agnix docs | Docusaurus 3 | WASM playground requires React, existing Docusaurus setup |
23+
| agentsys docs | Upgrade from static HTML | Currently hand-written HTML, planned upgrade to Astro or Docusaurus |
24+
25+
### Design Tokens
26+
27+
`agent-sh.dev/src/styles/tokens.css` is the canonical source for design tokens (colors, spacing, typography). Other sites mirror these values to maintain visual consistency.
28+
29+
### Documentation Hub
30+
31+
The landing site includes a `/docs/` page that links to all documentation sites. This provides a single entry point for users looking for docs.
32+
33+
## Future Work
34+
35+
- **Unified search** - Orama or similar for cross-site search
36+
- **Shared header/footer** - Web components or build-time includes for consistent navigation
37+
- **Custom domain** - `agent-sh.dev` pointing to GitHub Pages
38+
- **agentsys docs upgrade** - Migrate from static HTML to a framework with better DX

README.md

Lines changed: 33 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,44 @@
1-
# Starlight Starter Kit: Basics
1+
# agent-sh.dev
22

3-
[![Built with Starlight](https://astro.badg.es/v2/built-with-starlight/tiny.svg)](https://starlight.astro.build)
3+
Landing site for the agent-sh organization. Static Astro 5 site deployed to `agent-sh.github.io`.
44

5-
```
6-
npm create astro@latest -- --template starlight
7-
```
8-
9-
> 🧑‍🚀 **Seasoned astronaut?** Delete this file. Have fun!
10-
11-
## 🚀 Project Structure
12-
13-
Inside of your Astro + Starlight project, you'll see the following folders and files:
5+
## Structure
146

157
```
168
.
17-
├── public/
18-
├── src/
19-
│ ├── assets/
20-
│ ├── content/
21-
│ │ └── docs/
22-
│ └── content.config.ts
23-
├── astro.config.mjs
24-
├── package.json
25-
└── tsconfig.json
9+
├── ORG_ARCHITECTURE.md Architecture decision record
10+
├── astro.config.mjs Site config (base: /)
11+
├── public/ Static assets
12+
└── src/
13+
├── components/
14+
│ ├── Nav.astro Top navigation with Products dropdown
15+
│ └── Footer.astro Site footer
16+
├── data/
17+
│ ├── plugins.json Plugin catalog data
18+
│ └── skills.json Skills directory data
19+
├── layouts/
20+
│ └── Base.astro Base HTML layout
21+
├── pages/
22+
│ ├── index.astro Landing page - hero, stats, products, philosophy
23+
│ ├── docs.astro Documentation hub linking to all product docs
24+
│ ├── plugins.astro Plugin catalog with filters
25+
│ └── skills.astro Skills directory with search
26+
└── styles/
27+
├── tokens.css Design tokens (canonical source for all sites)
28+
└── main.css Site styles
2629
```
2730

28-
Starlight looks for `.md` or `.mdx` files in the `src/content/docs/` directory. Each file is exposed as a route based on its file name.
29-
30-
Images can be added to `src/assets/` and embedded in Markdown with a relative link.
31-
32-
Static assets, like favicons, can be placed in the `public/` directory.
33-
34-
## 🧞 Commands
31+
## Commands
3532

36-
All commands are run from the root of the project, from a terminal:
33+
| Command | Action |
34+
| :------------------ | :------------------------------------------ |
35+
| `npm install` | Install dependencies |
36+
| `npm run dev` | Start local dev server at localhost:4321 |
37+
| `npm run build` | Build production site to ./dist/ |
38+
| `npm run preview` | Preview build locally before deploying |
3739

38-
| Command | Action |
39-
| :------------------------ | :----------------------------------------------- |
40-
| `npm install` | Installs dependencies |
41-
| `npm run dev` | Starts local dev server at `localhost:4321` |
42-
| `npm run build` | Build your production site to `./dist/` |
43-
| `npm run preview` | Preview your build locally, before deploying |
44-
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
45-
| `npm run astro -- --help` | Get help using the Astro CLI |
40+
## Deployment
4641

47-
## 👀 Want to learn more?
42+
Deployed to GitHub Pages via `.github/workflows/deploy.yml`. Base path is `/`.
4843

49-
Check out [Starlight’s docs](https://starlight.astro.build/), read [the Astro documentation](https://docs.astro.build), or jump into the [Astro Discord server](https://astro.build/chat).
44+
See [ORG_ARCHITECTURE.md](./ORG_ARCHITECTURE.md) for the full architecture decision record covering URL structure, frameworks, design tokens, and future work.

astro.config.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,5 @@ import { defineConfig } from 'astro/config';
33

44
export default defineConfig({
55
site: 'https://agent-sh.github.io',
6-
base: '/agent-sh.dev/',
6+
base: '/',
77
});

src/components/Footer.astro

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,21 +10,28 @@ const base = import.meta.env.BASE_URL;
1010
</div>
1111
<div class="footer__col">
1212
<span class="footer__col-title">Products</span>
13-
<a href="https://agent-sh.github.io/agentsys/" target="_blank" rel="noopener noreferrer">agentsys</a>
14-
<a href="https://agent-sh.github.io/agnix/" target="_blank" rel="noopener noreferrer">agnix</a>
15-
<a href="https://github.com/agent-sh/web-ctl" target="_blank" rel="noopener noreferrer">web-ctl</a>
13+
<nav aria-label="Products">
14+
<a href="https://agent-sh.github.io/agentsys/" target="_blank" rel="noopener noreferrer">agentsys</a>
15+
<a href="https://agent-sh.github.io/agnix/" target="_blank" rel="noopener noreferrer">agnix</a>
16+
<a href="https://github.com/agent-sh/web-ctl" target="_blank" rel="noopener noreferrer">web-ctl</a>
17+
</nav>
1618
</div>
1719
<div class="footer__col">
1820
<span class="footer__col-title">Resources</span>
19-
<a href={`${base}plugins/`}>Plugin Catalog</a>
20-
<a href={`${base}skills/`}>Skills Directory</a>
21-
<a href="https://github.com/agent-sh" target="_blank" rel="noopener noreferrer">GitHub Org</a>
21+
<nav aria-label="Resources">
22+
<a href={`${base}docs/`}>Documentation</a>
23+
<a href={`${base}plugins/`}>Plugin Catalog</a>
24+
<a href={`${base}skills/`}>Skills Directory</a>
25+
<a href="https://github.com/agent-sh" target="_blank" rel="noopener noreferrer">GitHub Org</a>
26+
</nav>
2227
</div>
2328
<div class="footer__col">
2429
<span class="footer__col-title">Community</span>
25-
<a href="https://github.com/agent-sh/agentsys/discussions" target="_blank" rel="noopener noreferrer">Discussions</a>
26-
<a href="https://github.com/agent-sh/agentsys/issues" target="_blank" rel="noopener noreferrer">Issues</a>
27-
<a href="https://www.npmjs.com/package/agentsys" target="_blank" rel="noopener noreferrer">npm</a>
30+
<nav aria-label="Community">
31+
<a href="https://github.com/agent-sh/agentsys/discussions" target="_blank" rel="noopener noreferrer">Discussions</a>
32+
<a href="https://github.com/agent-sh/agentsys/issues" target="_blank" rel="noopener noreferrer">Issues</a>
33+
<a href="https://www.npmjs.com/package/agentsys" target="_blank" rel="noopener noreferrer">npm</a>
34+
</nav>
2835
</div>
2936
</div>
3037
<div class="footer__bottom">

src/components/Nav.astro

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,12 +30,13 @@ function isActive(path: string) {
3030
<strong>agnix</strong>
3131
<span>Agent config linter</span>
3232
</a>
33-
<a href="https://github.com/agent-sh/web-ctl" class="nav__dropdown-item nav__dropdown-item--soon" target="_blank" rel="noopener noreferrer">
33+
<a href="https://github.com/agent-sh/web-ctl" class="nav__dropdown-item" target="_blank" rel="noopener noreferrer">
3434
<strong>web-ctl</strong>
35-
<span>Browser automation (coming soon)</span>
35+
<span>Browser automation</span>
3636
</a>
3737
</div>
3838
</div>
39+
<a href={`${base}docs/`} class:list={["nav__link", { "nav__link--active": isActive('docs') }]}>Docs</a>
3940
<a href={`${base}plugins/`} class:list={["nav__link", { "nav__link--active": isActive('plugins') }]}>Plugins</a>
4041
<a href={`${base}skills/`} class:list={["nav__link", { "nav__link--active": isActive('skills') }]}>Skills</a>
4142
</div>
@@ -53,6 +54,7 @@ function isActive(path: string) {
5354
<a href={base} class="mobile-menu__link">Home</a>
5455
<a href="https://agent-sh.github.io/agentsys/" class="mobile-menu__link" target="_blank" rel="noopener noreferrer">agentsys</a>
5556
<a href="https://agent-sh.github.io/agnix/" class="mobile-menu__link" target="_blank" rel="noopener noreferrer">agnix</a>
57+
<a href={`${base}docs/`} class="mobile-menu__link">Docs</a>
5658
<a href={`${base}plugins/`} class="mobile-menu__link">Plugins</a>
5759
<a href={`${base}skills/`} class="mobile-menu__link">Skills</a>
5860
<a href="https://github.com/agent-sh" class="mobile-menu__link" target="_blank" rel="noopener noreferrer">GitHub</a>

src/data/plugins.json

Lines changed: 26 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"name": "next-task",
44
"description": "Task to production. 12-phase pipeline: discovery, exploration, planning, implementation, review, and shipping.",
55
"category": "workflow",
6-
"agents": 8,
6+
"agents": 10,
77
"skills": 3,
88
"commands": 1,
99
"repo": "https://github.com/agent-sh/next-task",
@@ -14,7 +14,7 @@
1414
"name": "ship",
1515
"description": "Branch to merged PR in one command. Commits, pushes, creates PR, monitors CI, addresses reviewer comments, merges.",
1616
"category": "workflow",
17-
"agents": 3,
17+
"agents": 0,
1818
"skills": 1,
1919
"commands": 1,
2020
"repo": "https://github.com/agent-sh/ship",
@@ -23,7 +23,7 @@
2323
},
2424
{
2525
"name": "agnix",
26-
"description": "Lint agent configurations with 229 validation rules across 10+ AI tools. SARIF output for GitHub Code Scanning.",
26+
"description": "Lint agent configurations with 230 validation rules across 10+ AI tools. SARIF output for GitHub Code Scanning.",
2727
"category": "quality",
2828
"agents": 1,
2929
"skills": 1,
@@ -36,7 +36,7 @@
3636
"name": "deslop",
3737
"description": "Kill AI slop before it ships. 3-phase detection pipeline finds debug statements, placeholder text, verbose comments.",
3838
"category": "quality",
39-
"agents": 2,
39+
"agents": 1,
4040
"skills": 1,
4141
"commands": 1,
4242
"repo": "https://github.com/agent-sh/deslop",
@@ -45,10 +45,10 @@
4545
},
4646
{
4747
"name": "enhance",
48-
"description": "Seven parallel analyzers check prompts, agents, plugins, docs, hooks, and skills. Certainty-graded findings.",
48+
"description": "Eight parallel analyzers check prompts, agents, plugins, docs, hooks, skills, and cross-file consistency. Certainty-graded findings.",
4949
"category": "quality",
50-
"agents": 7,
51-
"skills": 8,
50+
"agents": 8,
51+
"skills": 9,
5252
"commands": 1,
5353
"repo": "https://github.com/agent-sh/enhance",
5454
"install": "agentsys install enhance",
@@ -59,7 +59,7 @@
5959
"description": "Evidence-backed performance investigation. 10-phase methodology with baselines, profiling, and controlled experiments.",
6060
"category": "research",
6161
"agents": 6,
62-
"skills": 7,
62+
"skills": 8,
6363
"commands": 1,
6464
"repo": "https://github.com/agent-sh/perf",
6565
"install": "agentsys install perf",
@@ -78,7 +78,7 @@
7878
},
7979
{
8080
"name": "audit-project",
81-
"description": "Multi-agent code review. Up to 10 specialized agents review security, performance, architecture, and more.",
81+
"description": "Multi-agent code review. Up to 10 specialized role-based agents review security, performance, architecture, and more.",
8282
"category": "quality",
8383
"agents": 10,
8484
"skills": 1,
@@ -131,16 +131,26 @@
131131
"install": "agentsys install consult",
132132
"dependencies": []
133133
},
134+
{
135+
"name": "debate",
136+
"description": "Structured multi-round AI debates. Proposer vs challenger with evidence-backed arguments and synthesis.",
137+
"category": "research",
138+
"agents": 1,
139+
"skills": 1,
140+
"commands": 1,
141+
"repo": "https://github.com/agent-sh/debate",
142+
"install": "agentsys install debate",
143+
"dependencies": ["consult"]
144+
},
134145
{
135146
"name": "web-ctl",
136-
"description": "Browser automation and web testing toolkit for AI agents. Coming soon.",
147+
"description": "Browser automation and web testing toolkit for AI agents. Headless browser control, authentication, and page interaction.",
137148
"category": "infrastructure",
138-
"agents": 0,
139-
"skills": 0,
140-
"commands": 0,
149+
"agents": 1,
150+
"skills": 2,
151+
"commands": 1,
141152
"repo": "https://github.com/agent-sh/web-ctl",
142-
"install": "",
143-
"dependencies": [],
144-
"comingSoon": true
153+
"install": "agentsys install web-ctl",
154+
"dependencies": []
145155
}
146156
]

src/data/skills.json

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,18 @@
22
{ "name": "orchestrate-review", "plugin": "next-task", "description": "Multi-agent code review loop that iterates until clean", "platforms": ["Claude Code", "OpenCode", "Codex"] },
33
{ "name": "discover-tasks", "plugin": "next-task", "description": "Scan GitHub Issues, GitLab, or local files for prioritized tasks", "platforms": ["Claude Code", "OpenCode", "Codex"] },
44
{ "name": "validate-delivery", "plugin": "next-task", "description": "Pre-ship quality gate: tests, build, requirements check", "platforms": ["Claude Code", "OpenCode", "Codex"] },
5-
{ "name": "enhance-agents", "plugin": "enhance", "description": "Analyze agent configuration quality and completeness", "platforms": ["Claude Code", "OpenCode", "Codex"] },
6-
{ "name": "enhance-claudemd", "plugin": "enhance", "description": "Optimize CLAUDE.md project memory files", "platforms": ["Claude Code"] },
5+
{ "name": "enhance-orchestrator", "plugin": "enhance", "description": "Coordinate all enhancement analyzers in parallel and produce a unified report", "platforms": ["Claude Code", "OpenCode", "Codex"] },
6+
{ "name": "enhance-agent-prompts", "plugin": "enhance", "description": "Analyze agent prompts for prompt engineering best practices", "platforms": ["Claude Code", "OpenCode", "Codex"] },
7+
{ "name": "enhance-claude-memory", "plugin": "enhance", "description": "Analyze and optimize CLAUDE.md or AGENTS.md project memory files", "platforms": ["Claude Code", "OpenCode", "Codex"] },
78
{ "name": "enhance-docs", "plugin": "enhance", "description": "Documentation quality improvement analysis", "platforms": ["Claude Code", "OpenCode", "Codex"] },
89
{ "name": "enhance-hooks", "plugin": "enhance", "description": "Git hooks and automation analysis", "platforms": ["Claude Code", "OpenCode", "Codex"] },
910
{ "name": "enhance-plugins", "plugin": "enhance", "description": "Plugin configuration validation and optimization", "platforms": ["Claude Code", "OpenCode", "Codex"] },
1011
{ "name": "enhance-prompts", "plugin": "enhance", "description": "Prompt engineering best practices analysis", "platforms": ["Claude Code", "OpenCode", "Codex", "Cursor"] },
1112
{ "name": "enhance-skills", "plugin": "enhance", "description": "Skill definition quality and spec compliance", "platforms": ["Claude Code", "OpenCode", "Codex"] },
1213
{ "name": "enhance-cross-file", "plugin": "enhance", "description": "Cross-file semantic analysis for consistency", "platforms": ["Claude Code", "OpenCode", "Codex"] },
13-
{ "name": "baseline", "plugin": "perf", "description": "Establish performance baselines before changes", "platforms": ["Claude Code", "OpenCode", "Codex"] },
14-
{ "name": "benchmark", "plugin": "perf", "description": "Run controlled benchmarks with statistical analysis", "platforms": ["Claude Code", "OpenCode", "Codex"] },
15-
{ "name": "profile", "plugin": "perf", "description": "CPU and memory profiling with flamegraph generation", "platforms": ["Claude Code", "OpenCode", "Codex"] },
14+
{ "name": "perf-baseline-manager", "plugin": "perf", "description": "Manage performance baselines, consolidate results, and compare versions", "platforms": ["Claude Code", "OpenCode", "Codex"] },
15+
{ "name": "perf-benchmarker", "plugin": "perf", "description": "Run sequential benchmarks with strict duration and warmup rules", "platforms": ["Claude Code", "OpenCode", "Codex"] },
16+
{ "name": "perf-profiler", "plugin": "perf", "description": "CPU and memory profiling with flamegraph and hotspot evidence", "platforms": ["Claude Code", "OpenCode", "Codex"] },
1617
{ "name": "theory-tester", "plugin": "perf", "description": "Test performance hypotheses with controlled experiments", "platforms": ["Claude Code", "OpenCode", "Codex"] },
1718
{ "name": "code-paths", "plugin": "perf", "description": "Identify hot code paths and bottleneck functions", "platforms": ["Claude Code", "OpenCode", "Codex"] },
1819
{ "name": "theory-gatherer", "plugin": "perf", "description": "Generate performance hypotheses from profiling data", "platforms": ["Claude Code", "OpenCode", "Codex"] },
@@ -23,8 +24,12 @@
2324
{ "name": "repo-mapping", "plugin": "repo-map", "description": "Build AST-based symbol and import map of codebase", "platforms": ["Claude Code", "OpenCode", "Codex"] },
2425
{ "name": "sync-docs", "plugin": "sync-docs", "description": "Find and fix documentation drift from source code", "platforms": ["Claude Code", "OpenCode", "Codex"] },
2526
{ "name": "learn-topic", "plugin": "learn", "description": "Research topics online and create structured learning guides", "platforms": ["Claude Code", "OpenCode", "Codex"] },
26-
{ "name": "agnix-lint", "plugin": "agnix", "description": "Validate agent configs with 229 rules across AI tools", "platforms": ["Claude Code", "OpenCode", "Codex", "Cursor"] },
27+
{ "name": "agnix-lint", "plugin": "agnix", "description": "Validate agent configs with 230 rules across AI tools", "platforms": ["Claude Code", "OpenCode", "Codex", "Cursor"] },
2728
{ "name": "ship-pr", "plugin": "ship", "description": "Full PR lifecycle: create, monitor CI, address reviews, merge", "platforms": ["Claude Code", "OpenCode", "Codex"] },
2829
{ "name": "consult-tool", "plugin": "consult", "description": "Cross-tool AI consultation for second opinions", "platforms": ["Claude Code", "OpenCode", "Codex"] },
29-
{ "name": "audit-review", "plugin": "audit-project", "description": "Multi-domain code review with specialized agents", "platforms": ["Claude Code", "OpenCode", "Codex"] }
30+
{ "name": "audit-review", "plugin": "audit-project", "description": "Multi-domain code review with specialized agents", "platforms": ["Claude Code", "OpenCode", "Codex"] },
31+
{ "name": "debate", "plugin": "debate", "description": "Structured multi-round debates between AI tools with evidence-backed arguments", "platforms": ["Claude Code", "OpenCode", "Codex"] },
32+
33+
{ "name": "web-auth", "plugin": "web-ctl", "description": "Authenticate to websites with human-in-the-loop browser handoff for login, 2FA, and CAPTCHAs", "platforms": ["Claude Code", "OpenCode", "Codex"] },
34+
{ "name": "web-browse", "plugin": "web-ctl", "description": "Headless browser control for navigating and interacting with web pages", "platforms": ["Claude Code", "OpenCode", "Codex"] }
3035
]

0 commit comments

Comments
 (0)