opencodekit 0.18.0 → 0.18.2
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/dist/index.js +1 -1
- package/dist/template/.opencode/AGENTS.md +57 -0
- package/dist/template/.opencode/agent/scout.md +0 -37
- package/dist/template/.opencode/command/resume.md +1 -1
- package/dist/template/.opencode/command/status.md +7 -14
- package/dist/template/.opencode/memory.db +0 -0
- package/dist/template/.opencode/memory.db-shm +0 -0
- package/dist/template/.opencode/memory.db-wal +0 -0
- package/dist/template/.opencode/plugin/README.md +37 -25
- package/dist/template/.opencode/skill/accessibility-audit/SKILL.md +11 -5
- package/dist/template/.opencode/skill/agent-browser/SKILL.md +55 -18
- package/dist/template/.opencode/skill/agent-teams/SKILL.md +12 -1
- package/dist/template/.opencode/skill/augment-context-engine/SKILL.md +11 -1
- package/dist/template/.opencode/skill/beads/SKILL.md +57 -390
- package/dist/template/.opencode/skill/beads/references/BEST_PRACTICES.md +27 -0
- package/dist/template/.opencode/skill/beads/references/EXAMPLES.md +45 -0
- package/dist/template/.opencode/skill/beads/references/FILE_CLAIMING.md +101 -0
- package/dist/template/.opencode/skill/beads/references/GIT_SYNC.md +25 -0
- package/dist/template/.opencode/skill/beads/references/HIERARCHY.md +71 -0
- package/dist/template/.opencode/skill/beads/references/MULTI_AGENT.md +40 -0
- package/dist/template/.opencode/skill/beads/references/SESSION_PROTOCOL.md +61 -0
- package/dist/template/.opencode/skill/beads/references/TASK_CREATION.md +38 -0
- package/dist/template/.opencode/skill/beads/references/TROUBLESHOOTING.md +13 -0
- package/dist/template/.opencode/skill/beads-bridge/SKILL.md +10 -10
- package/dist/template/.opencode/skill/brainstorming/SKILL.md +13 -0
- package/dist/template/.opencode/skill/chrome-devtools/SKILL.md +11 -1
- package/dist/template/.opencode/skill/cloudflare/SKILL.md +87 -67
- package/dist/template/.opencode/skill/compaction/SKILL.md +11 -3
- package/dist/template/.opencode/skill/condition-based-waiting/SKILL.md +11 -25
- package/dist/template/.opencode/skill/context-engineering/SKILL.md +13 -2
- package/dist/template/.opencode/skill/context-initialization/SKILL.md +11 -1
- package/dist/template/.opencode/skill/context-management/SKILL.md +13 -1
- package/dist/template/.opencode/skill/core-data-expert/SKILL.md +13 -2
- package/dist/template/.opencode/skill/deep-research/SKILL.md +5 -8
- package/dist/template/.opencode/skill/defense-in-depth/SKILL.md +13 -0
- package/dist/template/.opencode/skill/design-system-audit/SKILL.md +9 -3
- package/dist/template/.opencode/skill/development-lifecycle/SKILL.md +51 -0
- package/dist/template/.opencode/skill/dispatching-parallel-agents/SKILL.md +19 -30
- package/dist/template/.opencode/skill/executing-plans/SKILL.md +36 -0
- package/dist/template/.opencode/skill/figma/SKILL.md +11 -1
- package/dist/template/.opencode/skill/finishing-a-development-branch/SKILL.md +31 -0
- package/dist/template/.opencode/skill/frontend-design/SKILL.md +13 -3
- package/dist/template/.opencode/skill/gemini-large-context/SKILL.md +11 -0
- package/dist/template/.opencode/skill/index-knowledge/SKILL.md +11 -1
- package/dist/template/.opencode/skill/jira/SKILL.md +11 -1
- package/dist/template/.opencode/skill/memory-system/SKILL.md +115 -60
- package/dist/template/.opencode/skill/mockup-to-code/SKILL.md +9 -3
- package/dist/template/.opencode/skill/mqdh/SKILL.md +11 -1
- package/dist/template/.opencode/skill/obsidian/SKILL.md +11 -1
- package/dist/template/.opencode/skill/opensrc/SKILL.md +18 -6
- package/dist/template/.opencode/skill/pdf-extract/SKILL.md +11 -1
- package/dist/template/.opencode/skill/playwright/SKILL.md +11 -1
- package/dist/template/.opencode/skill/playwriter/SKILL.md +11 -1
- package/dist/template/.opencode/skill/polar/SKILL.md +11 -1
- package/dist/template/.opencode/skill/prd/SKILL.md +13 -4
- package/dist/template/.opencode/skill/prd-task/SKILL.md +13 -3
- package/dist/template/.opencode/skill/ralph/SKILL.md +4 -8
- package/dist/template/.opencode/skill/react-best-practices/SKILL.md +24 -16
- package/dist/template/.opencode/skill/receiving-code-review/SKILL.md +22 -0
- package/dist/template/.opencode/skill/requesting-code-review/SKILL.md +30 -2
- package/dist/template/.opencode/skill/resend/SKILL.md +11 -1
- package/dist/template/.opencode/skill/root-cause-tracing/SKILL.md +12 -23
- package/dist/template/.opencode/skill/session-management/SKILL.md +33 -36
- package/dist/template/.opencode/skill/sharing-skills/SKILL.md +11 -0
- package/dist/template/.opencode/skill/skill-creator/SKILL.md +12 -11
- package/dist/template/.opencode/skill/source-code-research/SKILL.md +20 -266
- package/dist/template/.opencode/skill/source-code-research/references/analysis-tips.md +43 -0
- package/dist/template/.opencode/skill/source-code-research/references/anti-patterns.md +36 -0
- package/dist/template/.opencode/skill/source-code-research/references/common-patterns.md +57 -0
- package/dist/template/.opencode/skill/source-code-research/references/example-workflow.md +60 -0
- package/dist/template/.opencode/skill/source-code-research/references/further-reading.md +5 -0
- package/dist/template/.opencode/skill/source-code-research/references/source-structure.md +45 -0
- package/dist/template/.opencode/skill/stitch/SKILL.md +11 -1
- package/dist/template/.opencode/skill/structured-edit/SKILL.md +13 -0
- package/dist/template/.opencode/skill/subagent-driven-development/SKILL.md +13 -14
- package/dist/template/.opencode/skill/supabase/SKILL.md +11 -1
- package/dist/template/.opencode/skill/supabase-postgres-best-practices/SKILL.md +23 -15
- package/dist/template/.opencode/skill/swarm-coordination/SKILL.md +23 -923
- package/dist/template/.opencode/skill/swarm-coordination/references/architecture.md +39 -0
- package/dist/template/.opencode/skill/swarm-coordination/references/delegation-worker-protocol.md +145 -0
- package/dist/template/.opencode/skill/swarm-coordination/references/dependency-graph.md +50 -0
- package/dist/template/.opencode/skill/swarm-coordination/references/drift-check.md +90 -0
- package/dist/template/.opencode/skill/swarm-coordination/references/integration-beads.md +20 -0
- package/dist/template/.opencode/skill/swarm-coordination/references/launch-flow.md +186 -0
- package/dist/template/.opencode/skill/swarm-coordination/references/reconciler.md +172 -0
- package/dist/template/.opencode/skill/swarm-coordination/references/tier-enforcement.md +78 -0
- package/dist/template/.opencode/skill/swarm-coordination/references/tmux-integration.md +134 -0
- package/dist/template/.opencode/skill/swift-concurrency/SKILL.md +22 -2
- package/dist/template/.opencode/skill/swiftui-expert-skill/SKILL.md +58 -19
- package/dist/template/.opencode/skill/systematic-debugging/SKILL.md +25 -25
- package/dist/template/.opencode/skill/test-driven-development/SKILL.md +19 -15
- package/dist/template/.opencode/skill/testing-anti-patterns/SKILL.md +13 -0
- package/dist/template/.opencode/skill/testing-skills-with-subagents/SKILL.md +13 -15
- package/dist/template/.opencode/skill/tool-priority/SKILL.md +13 -0
- package/dist/template/.opencode/skill/ui-ux-research/SKILL.md +9 -3
- package/dist/template/.opencode/skill/using-git-worktrees/SKILL.md +11 -0
- package/dist/template/.opencode/skill/using-skills/SKILL.md +13 -0
- package/dist/template/.opencode/skill/v0/SKILL.md +11 -1
- package/dist/template/.opencode/skill/v1-run/SKILL.md +11 -1
- package/dist/template/.opencode/skill/vercel-deploy-claimable/SKILL.md +14 -2
- package/dist/template/.opencode/skill/verification-before-completion/SKILL.md +22 -0
- package/dist/template/.opencode/skill/visual-analysis/SKILL.md +9 -3
- package/dist/template/.opencode/skill/web-design-guidelines/SKILL.md +12 -5
- package/dist/template/.opencode/skill/writing-plans/SKILL.md +13 -0
- package/dist/template/.opencode/skill/writing-skills/SKILL.md +26 -421
- package/dist/template/.opencode/skill/writing-skills/references/anti-patterns.md +25 -0
- package/dist/template/.opencode/skill/writing-skills/references/claude-search-optimization.md +140 -0
- package/dist/template/.opencode/skill/writing-skills/references/discovery-workflow.md +11 -0
- package/dist/template/.opencode/skill/writing-skills/references/file-organization.md +32 -0
- package/dist/template/.opencode/skill/writing-skills/references/flowcharts-and-examples.md +57 -0
- package/dist/template/.opencode/skill/writing-skills/references/rationalization-hardening.md +75 -0
- package/dist/template/.opencode/skill/writing-skills/references/testing-skill-types.md +52 -0
- package/package.json +15 -4
- package/dist/template/.opencode/plugin/compaction.ts +0 -190
package/dist/index.js
CHANGED
|
@@ -220,3 +220,60 @@ Files over ~500 lines become hard to maintain and review. Extract helpers, split
|
|
|
220
220
|
- Cite concrete file paths and line numbers for non-trivial claims
|
|
221
221
|
|
|
222
222
|
_Complexity is the enemy. Minimize moving parts._
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## Memory System
|
|
227
|
+
|
|
228
|
+
4-tier automated knowledge pipeline backed by SQLite + FTS5 (porter stemming).
|
|
229
|
+
|
|
230
|
+
**Pipeline:** messages → capture → distillations (TF-IDF) → observations (curator) → LTM injection (system.transform)
|
|
231
|
+
|
|
232
|
+
### Memory Tools
|
|
233
|
+
|
|
234
|
+
```bash
|
|
235
|
+
# Search observations (FTS5)
|
|
236
|
+
memory-search({ query: "auth" })
|
|
237
|
+
|
|
238
|
+
# Get full observation details
|
|
239
|
+
memory-get({ ids: "42,45" })
|
|
240
|
+
|
|
241
|
+
# Create observation
|
|
242
|
+
observation({ type: "decision", title: "Use JWT", narrative: "..." })
|
|
243
|
+
|
|
244
|
+
# Update memory file
|
|
245
|
+
memory-update({ file: "research/findings", content: "..." })
|
|
246
|
+
|
|
247
|
+
# Read memory file
|
|
248
|
+
memory-read({ file: "research/findings" })
|
|
249
|
+
|
|
250
|
+
# Admin operations
|
|
251
|
+
memory-admin({ operation: "status" })
|
|
252
|
+
memory-admin({ operation: "capture-stats" })
|
|
253
|
+
memory-admin({ operation: "distill-now" })
|
|
254
|
+
memory-admin({ operation: "curate-now" })
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
### Session Tools
|
|
258
|
+
|
|
259
|
+
```bash
|
|
260
|
+
# Search sessions by keyword
|
|
261
|
+
find_sessions({ query: "auth", limit: 5 })
|
|
262
|
+
|
|
263
|
+
# Read session messages
|
|
264
|
+
read_session({ session_id: "abc123" })
|
|
265
|
+
read_session({ session_id: "abc123", focus: "auth" })
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
### Directory Structure
|
|
269
|
+
|
|
270
|
+
```
|
|
271
|
+
.opencode/memory/
|
|
272
|
+
├── project/ # Tacit knowledge (auto-injected)
|
|
273
|
+
│ ├── user.md # User preferences
|
|
274
|
+
│ ├── tech-stack.md # Framework, constraints
|
|
275
|
+
│ └── gotchas.md # Footguns, warnings
|
|
276
|
+
├── research/ # Research notes
|
|
277
|
+
├── handoffs/ # Session handoffs
|
|
278
|
+
└── _templates/ # Document templates
|
|
279
|
+
```
|
|
@@ -47,43 +47,6 @@ Find trustworthy external references quickly and return concise, cited guidance.
|
|
|
47
47
|
- Cite every non-trivial claim
|
|
48
48
|
- Prefer high-signal synthesis over long dumps
|
|
49
49
|
|
|
50
|
-
## Source Quality Hierarchy
|
|
51
|
-
|
|
52
|
-
| Rank | Source Type | Tiebreaker |
|
|
53
|
-
| ---- | ----------------------------------------------------- | ---------------------------------------------- |
|
|
54
|
-
| 1 | Official docs/specifications/release notes | Use unless clearly outdated |
|
|
55
|
-
| 2 | Library/framework source code and maintained examples | Prefer recent commits |
|
|
56
|
-
| 3 | Maintainer-authored technical articles | Check date, prefer <1 year |
|
|
57
|
-
| 4 | Community blogs/posts | Use only when higher-ranked sources are absent |
|
|
58
|
-
|
|
59
|
-
## Output
|
|
60
|
-
|
|
61
|
-
- Summary (2-5 bullets)
|
|
62
|
-
- Recommended approach
|
|
63
|
-
- Sources
|
|
64
|
-
- Risks/tradeoffs
|
|
65
|
-
|
|
66
|
-
# Scout Agent
|
|
67
|
-
|
|
68
|
-
**Purpose**: Knowledge seeker — you find the signal in the noise of external information.
|
|
69
|
-
|
|
70
|
-
> _"Good research doesn't dump facts; it creates actionable clarity."_
|
|
71
|
-
|
|
72
|
-
## Identity
|
|
73
|
-
|
|
74
|
-
You are a read-only research agent. You output concise recommendations backed by verifiable sources only.
|
|
75
|
-
|
|
76
|
-
## Task
|
|
77
|
-
|
|
78
|
-
Find trustworthy external references quickly and return concise, cited guidance.
|
|
79
|
-
|
|
80
|
-
## Rules
|
|
81
|
-
|
|
82
|
-
- Never modify project files
|
|
83
|
-
- Never invent URLs; only use verified links
|
|
84
|
-
- Cite every non-trivial claim
|
|
85
|
-
- Prefer high-signal synthesis over long dumps
|
|
86
|
-
|
|
87
50
|
## Before You Scout
|
|
88
51
|
|
|
89
52
|
- **Verify memory first**: Always check memory-search before external research
|
|
@@ -40,12 +40,11 @@ skill({ name: "beads" });
|
|
|
40
40
|
|
|
41
41
|
## Available Tools
|
|
42
42
|
|
|
43
|
-
| Tool | Use When
|
|
44
|
-
| --------------- |
|
|
45
|
-
| `br` | Task status and stats
|
|
46
|
-
| `git` | Git state and history
|
|
47
|
-
| `
|
|
48
|
-
| `action-queue` | Pending approvals and ready tasks |
|
|
43
|
+
| Tool | Use When |
|
|
44
|
+
| --------------- | --------------------- |
|
|
45
|
+
| `br` | Task status and stats |
|
|
46
|
+
| `git` | Git state and history |
|
|
47
|
+
| `find_sessions` | Recent sessions |
|
|
49
48
|
|
|
50
49
|
## Phase 1: Gather State (Parallel)
|
|
51
50
|
|
|
@@ -64,8 +63,7 @@ git log --oneline -5
|
|
|
64
63
|
```
|
|
65
64
|
|
|
66
65
|
```typescript
|
|
67
|
-
|
|
68
|
-
action - queue({ op: "status" });
|
|
66
|
+
find_sessions({ query: "today", limit: 5 });
|
|
69
67
|
```
|
|
70
68
|
|
|
71
69
|
---
|
|
@@ -89,12 +87,7 @@ GIT
|
|
|
89
87
|
Recent: [from git log]
|
|
90
88
|
|
|
91
89
|
SESSIONS TODAY
|
|
92
|
-
[from
|
|
93
|
-
|
|
94
|
-
ACTION QUEUE
|
|
95
|
-
Pending approvals: [from action-queue pending_approvals]
|
|
96
|
-
Ready tasks: [from action-queue ready_tasks]
|
|
97
|
-
Idle workers: [from action-queue idle_workers]
|
|
90
|
+
[from find_sessions]
|
|
98
91
|
```
|
|
99
92
|
|
|
100
93
|
---
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -6,36 +6,48 @@ Plugins in this directory extend OpenCode with project-specific behavior and too
|
|
|
6
6
|
|
|
7
7
|
```text
|
|
8
8
|
plugin/
|
|
9
|
-
├── memory.ts #
|
|
10
|
-
├── sessions.ts # Session tools (
|
|
11
|
-
├── compaction.ts # Compaction-time context recovery injection
|
|
12
|
-
├── swarm-enforcer.ts # Beads workflow enforcement and reminders
|
|
13
|
-
├── skill-mcp.ts # Skill-scoped MCP bridge (skill_mcp tools)
|
|
9
|
+
├── memory.ts # 4-tier automated memory system (capture → distill → curate → inject)
|
|
10
|
+
├── sessions.ts # Session search tools (find/read)
|
|
14
11
|
├── copilot-auth.ts # GitHub Copilot provider/auth integration
|
|
15
|
-
├──
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
12
|
+
├── skill-mcp.ts # Skill-scoped MCP bridge (skill_mcp tools)
|
|
13
|
+
└── lib/
|
|
14
|
+
├── memory-tools.ts # 6 core memory tools (observation, search, get, read, update, timeline)
|
|
15
|
+
├── memory-admin-tools.ts # Admin tool (memory-admin: 9 operations)
|
|
16
|
+
├── memory-hooks.ts # All hooks (event, idle, transforms, compaction)
|
|
17
|
+
├── memory-helpers.ts # Constants, compaction utilities, formatting
|
|
18
|
+
├── memory-db.ts # Barrel re-export for db/ modules
|
|
19
|
+
├── capture.ts # message.part.updated → temporal_messages
|
|
20
|
+
├── distill.ts # TF-IDF extraction, key sentence selection
|
|
21
|
+
├── curator.ts # Pattern-based knowledge extraction
|
|
22
|
+
├── context.ts # Token budget enforcement via messages.transform
|
|
23
|
+
├── inject.ts # Relevance-scored LTM injection via system.transform
|
|
24
|
+
├── notify.ts # Cross-platform notification helpers
|
|
25
|
+
└── db/
|
|
26
|
+
├── types.ts # All types + MEMORY_CONFIG
|
|
27
|
+
├── schema.ts # SQL schema, migrations, DB singleton
|
|
28
|
+
├── observations.ts # Observation CRUD + FTS5 search
|
|
29
|
+
├── pipeline.ts # Temporal messages + distillations + relevance scoring
|
|
30
|
+
└── maintenance.ts # Memory files, FTS5, archiving, vacuum
|
|
19
31
|
```
|
|
20
32
|
|
|
21
33
|
## Plugin Responsibilities
|
|
22
34
|
|
|
23
35
|
- `memory.ts`
|
|
24
|
-
-
|
|
25
|
-
-
|
|
26
|
-
-
|
|
36
|
+
- 4-tier automated knowledge system: temporal_messages → distillations → observations → memory_files
|
|
37
|
+
- Captures messages automatically via `message.part.updated` events
|
|
38
|
+
- Distills sessions on idle (TF-IDF, key sentence extraction)
|
|
39
|
+
- Curates observations from distillations via pattern matching
|
|
40
|
+
- Injects relevant knowledge into system prompt (BM25 _ recency _ confidence scoring)
|
|
41
|
+
- Manages context window via messages.transform (token budget enforcement)
|
|
42
|
+
- Merges compaction logic (beads, handoffs, project memory, knowledge)
|
|
43
|
+
- Provides 7 tools: observation, memory-search, memory-get, memory-read, memory-update, memory-timeline, memory-admin
|
|
27
44
|
|
|
28
45
|
- `sessions.ts`
|
|
29
|
-
- Provides
|
|
30
|
-
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
-
|
|
34
|
-
|
|
35
|
-
- `swarm-enforcer.ts`
|
|
36
|
-
- Injects bead state and stage labels into system context
|
|
37
|
-
- Warns when implementation starts without a properly started bead
|
|
38
|
-
- Reminds to close/sync in-progress work on session idle
|
|
46
|
+
- Provides tools: `find_sessions`, `read_session`
|
|
47
|
+
- Direct SQLite access to OpenCode's session DB
|
|
48
|
+
- Multi-word AND search with relevance ranking
|
|
49
|
+
- 180-day time-bounded search
|
|
50
|
+
- Agentic `nextStep` guidance in results
|
|
39
51
|
|
|
40
52
|
- `skill-mcp.ts`
|
|
41
53
|
- Loads MCP configs from skills
|
|
@@ -48,9 +60,9 @@ plugin/
|
|
|
48
60
|
|
|
49
61
|
## Notes
|
|
50
62
|
|
|
51
|
-
-
|
|
52
|
-
- Keep plugin documentation aligned with actual files in this directory
|
|
53
|
-
- Prefer shared helpers in `lib/` over duplicated utilities across plugins
|
|
63
|
+
- OpenCode auto-discovers every `.ts` file in `plugin/` as a plugin — keep helper modules in `lib/`
|
|
64
|
+
- Keep plugin documentation aligned with actual files in this directory
|
|
65
|
+
- Prefer shared helpers in `lib/` over duplicated utilities across plugins
|
|
54
66
|
|
|
55
67
|
## References
|
|
56
68
|
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: accessibility-audit
|
|
3
3
|
description: Use when auditing UI components or pages for accessibility compliance, checking WCAG conformance, identifying keyboard navigation issues, color contrast problems, and pre-launch accessibility verification
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
tags: [ui, code-quality]
|
|
6
|
+
dependencies: []
|
|
4
7
|
---
|
|
5
8
|
|
|
6
9
|
# Accessibility Audit Skill
|
|
7
10
|
|
|
8
|
-
Audit UI accessibility against WCAG 2.1/2.2 guidelines.
|
|
9
|
-
|
|
10
11
|
## When to Use
|
|
11
12
|
|
|
12
13
|
- Reviewing UI components for accessibility compliance
|
|
@@ -15,6 +16,11 @@ Audit UI accessibility against WCAG 2.1/2.2 guidelines.
|
|
|
15
16
|
- Checking color contrast
|
|
16
17
|
- Pre-launch accessibility verification
|
|
17
18
|
|
|
19
|
+
## When NOT to Use
|
|
20
|
+
|
|
21
|
+
- Non-UI work where accessibility isn't applicable.
|
|
22
|
+
|
|
23
|
+
|
|
18
24
|
## Core Workflow
|
|
19
25
|
|
|
20
26
|
### Phase 1: Visual Accessibility Analysis
|
|
@@ -179,7 +185,7 @@ Save audit reports to `.opencode/memory/design/accessibility/`
|
|
|
179
185
|
|
|
180
186
|
## Related Skills
|
|
181
187
|
|
|
182
|
-
| Need | Skill
|
|
183
|
-
| -------------- |
|
|
188
|
+
| Need | Skill |
|
|
189
|
+
| -------------- | ----------------- |
|
|
184
190
|
| Design quality | `frontend-design` |
|
|
185
|
-
| UI research | `ui-ux-research`
|
|
191
|
+
| UI research | `ui-ux-research` |
|
|
@@ -1,12 +1,21 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: agent-browser
|
|
3
3
|
description: Browser automation CLI for AI agents using Playwright
|
|
4
|
-
version: 1
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
tags: [automation, mcp]
|
|
6
|
+
dependencies: []
|
|
5
7
|
---
|
|
6
8
|
|
|
7
9
|
# agent-browser
|
|
8
10
|
|
|
9
|
-
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
- When you need Playwright-based browser automation via the agent-browser CLI.
|
|
14
|
+
|
|
15
|
+
## When NOT to Use
|
|
16
|
+
|
|
17
|
+
- When MCP-based browser control is required instead of a CLI workflow.
|
|
18
|
+
|
|
10
19
|
|
|
11
20
|
## Installation
|
|
12
21
|
|
|
@@ -50,28 +59,33 @@ agent-browser get text @e1 # Get heading text
|
|
|
50
59
|
Ref syntax: `@e1`, `e1`, or `ref=e1` all work.
|
|
51
60
|
|
|
52
61
|
**Why refs?**
|
|
62
|
+
|
|
53
63
|
- Deterministic: points to exact element from snapshot
|
|
54
64
|
- Fast: no DOM re-query, uses cached role/name locator
|
|
55
65
|
- AI-friendly: snapshot + ref workflow optimal for LLMs
|
|
56
66
|
|
|
57
67
|
### Interactive Roles (get refs automatically)
|
|
68
|
+
|
|
58
69
|
`button`, `link`, `textbox`, `checkbox`, `radio`, `combobox`, `listbox`, `menuitem`, `option`, `searchbox`, `slider`, `spinbutton`, `switch`, `tab`, `treeitem`
|
|
59
70
|
|
|
60
71
|
### Content Roles (get refs when named)
|
|
72
|
+
|
|
61
73
|
`heading`, `cell`, `gridcell`, `columnheader`, `rowheader`, `listitem`, `article`, `region`, `main`, `navigation`
|
|
62
74
|
|
|
63
75
|
## Commands
|
|
64
76
|
|
|
65
77
|
### Navigation
|
|
78
|
+
|
|
66
79
|
```bash
|
|
67
80
|
agent-browser open <url> # Auto-prepends https:// if needed
|
|
68
81
|
agent-browser back
|
|
69
|
-
agent-browser forward
|
|
82
|
+
agent-browser forward
|
|
70
83
|
agent-browser reload
|
|
71
84
|
agent-browser close # Closes browser + daemon
|
|
72
85
|
```
|
|
73
86
|
|
|
74
87
|
### Interaction
|
|
88
|
+
|
|
75
89
|
```bash
|
|
76
90
|
agent-browser click <sel> # Left click
|
|
77
91
|
agent-browser dblclick <sel> # Double click
|
|
@@ -92,6 +106,7 @@ agent-browser upload <sel> <file1> [file2...]
|
|
|
92
106
|
```
|
|
93
107
|
|
|
94
108
|
### Get Info
|
|
109
|
+
|
|
95
110
|
```bash
|
|
96
111
|
agent-browser get text <sel> # textContent
|
|
97
112
|
agent-browser get html <sel> # innerHTML
|
|
@@ -104,6 +119,7 @@ agent-browser get box <sel> # Bounding box {x,y,width,height}
|
|
|
104
119
|
```
|
|
105
120
|
|
|
106
121
|
### Check State
|
|
122
|
+
|
|
107
123
|
```bash
|
|
108
124
|
agent-browser is visible <sel>
|
|
109
125
|
agent-browser is enabled <sel>
|
|
@@ -111,6 +127,7 @@ agent-browser is checked <sel>
|
|
|
111
127
|
```
|
|
112
128
|
|
|
113
129
|
### Snapshot Options
|
|
130
|
+
|
|
114
131
|
```bash
|
|
115
132
|
agent-browser snapshot # Full accessibility tree
|
|
116
133
|
agent-browser snapshot -i # Interactive elements only (buttons, inputs, links)
|
|
@@ -121,6 +138,7 @@ agent-browser snapshot -i -c -d 5 # Combine options
|
|
|
121
138
|
```
|
|
122
139
|
|
|
123
140
|
### Screenshots & PDF
|
|
141
|
+
|
|
124
142
|
```bash
|
|
125
143
|
agent-browser screenshot [path] # PNG to stdout (base64) or file
|
|
126
144
|
agent-browser screenshot --full # Full page screenshot
|
|
@@ -129,6 +147,7 @@ agent-browser pdf <path> # Save as PDF (format: Letter, A4, etc)
|
|
|
129
147
|
```
|
|
130
148
|
|
|
131
149
|
### Wait
|
|
150
|
+
|
|
132
151
|
```bash
|
|
133
152
|
agent-browser wait <selector> # Wait for element visible
|
|
134
153
|
agent-browser wait <ms> # Wait for time (numeric = milliseconds)
|
|
@@ -139,6 +158,7 @@ agent-browser wait --fn "window.ready === true" # Wait for JS condition
|
|
|
139
158
|
```
|
|
140
159
|
|
|
141
160
|
### Find (Semantic Locators)
|
|
161
|
+
|
|
142
162
|
```bash
|
|
143
163
|
agent-browser find role button click --name "Submit"
|
|
144
164
|
agent-browser find text "Sign In" click
|
|
@@ -155,6 +175,7 @@ agent-browser find nth 2 "a" text # Nth match (0-indexed)
|
|
|
155
175
|
Actions: `click`, `fill`, `check`, `hover`, `text`
|
|
156
176
|
|
|
157
177
|
### Sessions (Isolated Browser Instances)
|
|
178
|
+
|
|
158
179
|
```bash
|
|
159
180
|
agent-browser --session agent1 open site-a.com
|
|
160
181
|
agent-browser --session agent2 open site-b.com
|
|
@@ -167,6 +188,7 @@ agent-browser session # Show current session
|
|
|
167
188
|
Each session has: own browser, cookies/storage, navigation history, auth state.
|
|
168
189
|
|
|
169
190
|
### Storage & Cookies
|
|
191
|
+
|
|
170
192
|
```bash
|
|
171
193
|
agent-browser cookies # Get all cookies
|
|
172
194
|
agent-browser cookies set <name> <val>
|
|
@@ -180,6 +202,7 @@ agent-browser storage session # Same for sessionStorage
|
|
|
180
202
|
```
|
|
181
203
|
|
|
182
204
|
### Tabs & Windows
|
|
205
|
+
|
|
183
206
|
```bash
|
|
184
207
|
agent-browser tab # List tabs
|
|
185
208
|
agent-browser tab new [url] # New tab
|
|
@@ -189,18 +212,21 @@ agent-browser window new # New window (new context)
|
|
|
189
212
|
```
|
|
190
213
|
|
|
191
214
|
### Frames
|
|
215
|
+
|
|
192
216
|
```bash
|
|
193
217
|
agent-browser frame <sel> # Switch to iframe by selector
|
|
194
218
|
agent-browser frame main # Back to main frame
|
|
195
219
|
```
|
|
196
220
|
|
|
197
221
|
### Dialogs (alert/confirm/prompt)
|
|
222
|
+
|
|
198
223
|
```bash
|
|
199
224
|
agent-browser dialog accept [text] # Accept (with optional prompt text)
|
|
200
225
|
agent-browser dialog dismiss # Dismiss
|
|
201
226
|
```
|
|
202
227
|
|
|
203
228
|
### Network Interception
|
|
229
|
+
|
|
204
230
|
```bash
|
|
205
231
|
agent-browser network route <url> # Intercept requests
|
|
206
232
|
agent-browser network route <url> --abort # Block requests
|
|
@@ -211,6 +237,7 @@ agent-browser network requests --filter api # Filter by URL pattern
|
|
|
211
237
|
```
|
|
212
238
|
|
|
213
239
|
### Browser Settings
|
|
240
|
+
|
|
214
241
|
```bash
|
|
215
242
|
agent-browser set viewport <w> <h>
|
|
216
243
|
agent-browser set device "iPhone 14" # Emulate device
|
|
@@ -222,6 +249,7 @@ agent-browser set headers '{"X-Custom":"value"}'
|
|
|
222
249
|
```
|
|
223
250
|
|
|
224
251
|
### Debug & Tracing
|
|
252
|
+
|
|
225
253
|
```bash
|
|
226
254
|
agent-browser --headed open <url> # Show browser window (not headless)
|
|
227
255
|
agent-browser console # View console messages
|
|
@@ -235,12 +263,14 @@ agent-browser trace stop [path] # Stop and save trace
|
|
|
235
263
|
```
|
|
236
264
|
|
|
237
265
|
### Auth State Persistence
|
|
266
|
+
|
|
238
267
|
```bash
|
|
239
268
|
agent-browser state save auth.json # Save cookies, localStorage, sessionStorage
|
|
240
269
|
agent-browser state load auth.json # Load at next launch (must be at browser start)
|
|
241
270
|
```
|
|
242
271
|
|
|
243
272
|
### Mouse Control
|
|
273
|
+
|
|
244
274
|
```bash
|
|
245
275
|
agent-browser mouse move <x> <y> # Move to coordinates
|
|
246
276
|
agent-browser mouse down [button] # left|right|middle
|
|
@@ -250,15 +280,15 @@ agent-browser mouse wheel <dy> [dx] # Scroll wheel
|
|
|
250
280
|
|
|
251
281
|
## Options
|
|
252
282
|
|
|
253
|
-
| Option
|
|
254
|
-
|
|
283
|
+
| Option | Description |
|
|
284
|
+
| ------------------ | ------------------------------------------------- |
|
|
255
285
|
| `--session <name>` | Isolated session (or `AGENT_BROWSER_SESSION` env) |
|
|
256
|
-
| `--json`
|
|
257
|
-
| `--full, -f`
|
|
258
|
-
| `--headed`
|
|
259
|
-
| `--name, -n`
|
|
260
|
-
| `--exact`
|
|
261
|
-
| `--debug`
|
|
286
|
+
| `--json` | JSON output (for parsing) |
|
|
287
|
+
| `--full, -f` | Full page screenshot |
|
|
288
|
+
| `--headed` | Show browser window |
|
|
289
|
+
| `--name, -n` | Locator name filter |
|
|
290
|
+
| `--exact` | Exact text match |
|
|
291
|
+
| `--debug` | Debug output |
|
|
262
292
|
|
|
263
293
|
## Selector Types
|
|
264
294
|
|
|
@@ -283,6 +313,7 @@ agent-browser is visible @e2 --json
|
|
|
283
313
|
## Patterns
|
|
284
314
|
|
|
285
315
|
### Login Flow
|
|
316
|
+
|
|
286
317
|
```bash
|
|
287
318
|
agent-browser open https://example.com/login
|
|
288
319
|
agent-browser snapshot -i
|
|
@@ -295,6 +326,7 @@ agent-browser state save auth.json # Persist auth for later
|
|
|
295
326
|
```
|
|
296
327
|
|
|
297
328
|
### Form Submission
|
|
329
|
+
|
|
298
330
|
```bash
|
|
299
331
|
agent-browser open https://example.com/form
|
|
300
332
|
agent-browser snapshot -i --json
|
|
@@ -308,6 +340,7 @@ agent-browser wait --text "Success"
|
|
|
308
340
|
```
|
|
309
341
|
|
|
310
342
|
### Scraping Data
|
|
343
|
+
|
|
311
344
|
```bash
|
|
312
345
|
agent-browser open https://example.com/data
|
|
313
346
|
agent-browser snapshot
|
|
@@ -318,6 +351,7 @@ agent-browser eval "JSON.stringify([...document.querySelectorAll('.price')].map(
|
|
|
318
351
|
```
|
|
319
352
|
|
|
320
353
|
### Multi-page Navigation
|
|
354
|
+
|
|
321
355
|
```bash
|
|
322
356
|
agent-browser open https://example.com
|
|
323
357
|
agent-browser snapshot -i
|
|
@@ -327,6 +361,7 @@ agent-browser snapshot -i # Fresh snapshot for new page
|
|
|
327
361
|
```
|
|
328
362
|
|
|
329
363
|
### Parallel Browser Sessions
|
|
364
|
+
|
|
330
365
|
```bash
|
|
331
366
|
# Terminal 1
|
|
332
367
|
agent-browser --session scraper1 open https://site-a.com
|
|
@@ -338,6 +373,7 @@ agent-browser --session scraper2 snapshot -i
|
|
|
338
373
|
```
|
|
339
374
|
|
|
340
375
|
### Mock API Response
|
|
376
|
+
|
|
341
377
|
```bash
|
|
342
378
|
agent-browser network route "**/api/users" --body '[{"id":1,"name":"Mock User"}]'
|
|
343
379
|
agent-browser open https://example.com # App sees mocked data
|
|
@@ -345,6 +381,7 @@ agent-browser network unroute "**/api/users"
|
|
|
345
381
|
```
|
|
346
382
|
|
|
347
383
|
### Handle File Downloads
|
|
384
|
+
|
|
348
385
|
```bash
|
|
349
386
|
agent-browser open https://example.com/downloads
|
|
350
387
|
agent-browser snapshot -i
|
|
@@ -367,10 +404,10 @@ Default timeout: 10 seconds (Playwright default is 30s). Commands will fail afte
|
|
|
367
404
|
|
|
368
405
|
## Browser Support
|
|
369
406
|
|
|
370
|
-
| Platform
|
|
371
|
-
|
|
372
|
-
| macOS ARM64 | Native Rust | Node.js
|
|
373
|
-
| macOS x64
|
|
374
|
-
| Linux ARM64 | Native Rust | Node.js
|
|
375
|
-
| Linux x64
|
|
376
|
-
| Windows
|
|
407
|
+
| Platform | Binary | Fallback |
|
|
408
|
+
| ----------- | ----------- | -------- |
|
|
409
|
+
| macOS ARM64 | Native Rust | Node.js |
|
|
410
|
+
| macOS x64 | Native Rust | Node.js |
|
|
411
|
+
| Linux ARM64 | Native Rust | Node.js |
|
|
412
|
+
| Linux x64 | Native Rust | Node.js |
|
|
413
|
+
| Windows | - | Node.js |
|
|
@@ -6,11 +6,22 @@ description: >
|
|
|
6
6
|
Covers team configuration, task distribution, coordination patterns, and best practices.
|
|
7
7
|
version: "1.0.0"
|
|
8
8
|
license: MIT
|
|
9
|
+
tags: [agent-coordination, workflow]
|
|
10
|
+
dependencies: []
|
|
9
11
|
---
|
|
10
12
|
|
|
11
13
|
# Agent Teams - Multi-Agent Team Coordination
|
|
12
14
|
|
|
13
|
-
|
|
15
|
+
## When to Use
|
|
16
|
+
|
|
17
|
+
- Parallel research, review, or competing approaches that need coordination
|
|
18
|
+
- Tasks benefit from shared findings and a lead coordinating teammates
|
|
19
|
+
|
|
20
|
+
## When NOT to Use
|
|
21
|
+
|
|
22
|
+
- Single-agent tasks or tightly coupled edits where coordination overhead is wasteful
|
|
23
|
+
- Simple parallel work that can use fire-and-forget subagents instead
|
|
24
|
+
|
|
14
25
|
|
|
15
26
|
## Overview
|
|
16
27
|
|
|
@@ -1,11 +1,21 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: augment-context-engine
|
|
3
3
|
description: Semantic codebase search via Augment Context Engine MCP. Use when you need to understand code relationships, find relevant implementations, or explore unfamiliar codebases beyond keyword matching.
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
tags: [research, context]
|
|
6
|
+
dependencies: []
|
|
4
7
|
---
|
|
5
8
|
|
|
6
9
|
# Augment Context Engine (MCP)
|
|
7
10
|
|
|
8
|
-
|
|
11
|
+
## When to Use
|
|
12
|
+
|
|
13
|
+
- When you need semantic search to understand code relationships or find implementations beyond keyword matching.
|
|
14
|
+
|
|
15
|
+
## When NOT to Use
|
|
16
|
+
|
|
17
|
+
- When exact string matching or known file paths can be handled by grep/read/LSP locally.
|
|
18
|
+
|
|
9
19
|
|
|
10
20
|
## Available Tools
|
|
11
21
|
|