一键导入
http-collection
Scaffold or repair `etc/http/` OpenCollection trees for Bruno. Use for new collections, brownfield standardization, or Bruno/Postman migration.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Scaffold or repair `etc/http/` OpenCollection trees for Bruno. Use for new collections, brownfield standardization, or Bruno/Postman migration.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | http-collection |
| description | Scaffold or repair `etc/http/` OpenCollection trees for Bruno. Use for new collections, brownfield standardization, or Bruno/Postman migration. |
Build one canonical etc/http/ tree that matches the repo's real API surface and domain language.
Reference spec: https://spec.opencollection.com/ (v1.0.0).
etc/http/ collectionetc/http/ treecurl snippetsetc/http/opencollection.yml is absent; brownfield when etc/http/ or any collection item already exists.scripts/scaffold.sh <project-root> to create the canonical starter tree.etc/http/opencollection.yml as the collection root. Use OpenCollection YAML (.yml) for request and folder files.etc/http/environments/*.json. Put secrets in .env. Commit only .env.sample.identity/, billing/, lifecycle/), never by HTTP verb or raw URL shape.etc/http/lib.js. Put shared runtime setup in opencollection.yml.docs: block.scripts/scaffold.sh <project-root>.domain-context/ with real bounded-context folder names from the repo.This skill produces one artifact. Return exactly this markdown artifact after applying the skill:
## HTTP Collection Plan
- Mode: {greenfield | brownfield}
- Read: `references/spec-summary.md`, `references/templates.md`, `references/readme-template.md`, `scripts/scaffold.sh`
- Ran: `scripts/scaffold.sh <project-root>`
- Created: {files}
- Updated: {files}
- Removed: {files or "none"}
- Customized domains: {folders}
- Validation:
- [ ] `opencollection.yml` is the root
- [ ] `environments/*.json` contain placeholders or `process.env` references only
- [ ] `.env.sample` exists and `.env` stays uncommitted
- [ ] `lib.js` holds shared assertions
- [ ] every request has tags and `docs:`
- [ ] folder names use domain language, not HTTP verbs
| Task | Read |
|---|---|
| Understand required schema | references/spec-summary.md |
| Copy or adapt starter files | references/templates.md |
Write or refresh the collection README.md | references/readme-template.md |
| Generate starter tree | scripts/scaffold.sh |
Before
repo/
└── src/
After
etc/http/
├── opencollection.yml
├── lib.js
├── .env.sample
├── .gitignore
├── README.md
├── environments/
│ ├── local.json
│ ├── staging.json
│ └── production.json
├── observability/
│ ├── folder.yml
│ └── liveness.yml
└── identity/
├── folder.yml
└── current-principal.yml
Use identity/ because the repo's auth API is the real bounded context. Do not keep domain-context/ once the real folder exists.
Before
etc/http/
├── identity/
│ └── current-principal.yml
├── billing/
│ └── invoice-summary.yml
└── domain-context/
└── get-resource.yml
After
etc/http/
├── opencollection.yml
├── lib.js
├── .env.sample
├── .gitignore
├── README.md
├── environments/
│ ├── local.json
│ ├── staging.json
│ └── production.json
├── observability/
│ ├── folder.yml
│ └── liveness.yml
├── identity/
│ └── current-principal.yml
└── billing/
└── invoice-summary.yml
Keep identity/ and billing/. Delete the placeholder domain-context/ tree after the real contexts cover the domain.
SKILL.md stays lean; starter content lives in the reference files.opencollection.yml is valid OpenCollection YAML..env or process.env.Control herdr (a terminal-native agent multiplexer) from inside it. Manage workspaces and tabs, split panes, spawn sibling agents, read pane output, and wait for state changes — all via CLI commands that talk to the running herdr instance over a local unix socket. Use when running inside herdr (HERDR_ENV=1). Do not use outside herdr.
Sets up an `## Agent skills` block in AGENTS.md/CLAUDE.md and `docs/agents/` so the engineering skills know this repo's issue tracker (GitHub, GitLab, fp, or local markdown), triage label vocabulary, and domain doc layout. Run before first use of `fp-plan`, `fp-implement`, `fp-review`, `to-issues`, `to-prd`, `triage`, `diagnose`, `tdd`, `improve-codebase-architecture`, or `zoom-out` — or if those skills appear to be missing context about the issue tracker, triage labels, or domain docs.
Grilling session that challenges your plan against the existing domain model, sharpens terminology, and updates documentation (CONTEXT.md, ADRs) inline as decisions crystallise. Use when user wants to stress-test a plan against their project's language and documented decisions.
Find deepening opportunities in a codebase, informed by the domain language in CONTEXT.md and the decisions in docs/adr/. Use when the user wants to improve architecture, find refactoring opportunities, consolidate tightly-coupled modules, or make a codebase more testable and AI-navigable.
Build a throwaway prototype to flush out a design before committing to it. Routes between two branches — a runnable terminal app for state/business-logic questions, or several radically different UI variations toggleable from one route. Use when the user wants to prototype, sanity-check a data model or state machine, mock up a UI, explore design options, or says "prototype this", "let me play with it", "try a few designs".
Stress-test a plan against the domain model. Interrogates ambiguous terms, verifies claims against code, and updates CONTEXT.md, CONTEXT-MAP.md, and docs/adr/ inline. Do NOT use for greenfield ideation, code review, or AGENTS.md.