bama
BAMA: 모든 Mac 앱을 만들 수 있습니다
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Our agent harness: Skills, plugins, hooks, and utilities to improve the quality of your agent.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Skills live in .agents/skills/ and are shared across every agent.
Install the skills with the skills.sh installer:
npx skills@latest add codelytv/agent-harness
Pick the skills you want and the coding agents you want to install them on.
Run a skill in your agent, for example /codely-doc-create.
Done. Your agent now follows Codely's conventions.
Add this repository as a plugin marketplace and install the plugin:
/plugin marketplace add CodelyTV/agent-harness
/plugin install codely-skills@codely
Run a skill in Claude Code, for example /codely-doc-create.
Done. Every skill in this repo is now available in Claude Code.
Skills are grouped by category:
| Skill | What it does |
|---|---|
codely-doc-create | Generates convention documentation from the current conversation, turning feedback and corrections into reusable docs. |
Two ways to use codely-doc-create:
/codely-doc-create to turn the corrections the agent received during the session into
a new doc./codely-doc-create <description> to formalize a convention you want to document
upfront.| Skill | What it does |
|---|---|
codely-plan-create | Breaks a task into reviewable phases (vertical slices), defines the public contracts to change, and saves an approved plan file. |
codely-plan-create-subagents | Same planning flow, but delegates the codebase exploration to cheaper subagents running in parallel. |
codely-plan-phase-implement | Executes a single phase of a plan at a time, updates its checkboxes, and stops for review without committing automatically. |
codely-plan-create-github | Same planning flow, but stored as GitHub issues: a parent plan issue and one native sub-issue per phase. |
codely-plan-phase-implement-github | Implements one phase issue at a time on its linked branch and opens a pull request that closes the issue on merge. |
codely-plan-create-gitlab | Same planning flow, but stored as GitLab issues: a parent plan issue and one linked child issue per phase. |
codely-plan-phase-implement-gitlab | Implements one phase issue at a time on its linked branch and opens a merge request that closes the issue on merge. |
Typical flow:
/codely-plan-create <task> (or /codely-plan-create-subagents <task> to delegate the
exploration) to produce a phased plan file under .agents/plans/./codely-plan-phase-implement <plan-file-path>, reviewing and committing after
each one.| Skill | What it does |
|---|---|
codely-openspec-spec-create-from-code | Writes the OpenSpec specs of behaviour that already exists in the code, so the next change can modify or remove it instead of only adding to it. |
Two ways to use codely-openspec-spec-create-from-code:
/codely-openspec-spec-create-from-code <the change you are about to make> to specify the
current behaviour it will touch, then continue with /openspec-explore./codely-openspec-spec-create-from-code <capability> to specify an existing feature, or without
arguments to list the features that still lack a spec.Only intended and verified behaviour reaches the spec: bugs, accidental behaviour and dead code are reported instead.
codely-spec-plan schemaAn OpenSpec custom schema that brings the
codely-plan-create-subagents flow to OpenSpec. Each change produces only two things to review:
plan.md: goal, decisions and one vertical slice phase per part a user can complete a goal with, each with its
contracts and a test strategy that proves it with few tests. Its checkboxes are the task list that
/openspec-apply-change works through one phase per run, committing each phase.Install it in your project and select it in openspec/config.yaml:
npx degit CodelyTV/agent-harness/openspec/schemas/codely-spec-plan openspec/schemas/codely-spec-plan
schema: codely-spec-plan
| Skill | What it does |
|---|---|
codely-git-conventional-commit | Creates a Git commit following the team's Conventional Commits conventions and co-author trailer. |
Run /codely-git-conventional-commit to stage and commit your changes with a conventional message.
Output styles change how the agent writes to you, not how it writes code.
| Plugin | What it does |
|---|---|
ste100 | Answers in ASD-STE100 Simplified Technical English: short sentences, active voice, one word per meaning, no idioms. |
/plugin marketplace add CodelyTV/agent-harness
/plugin install ste100@codely
Then run /config, look for Output Style, and select ASD-STE100.
| Plugin | What it does |
|---|---|
ts7-lsp | TypeScript/JavaScript go-to-definition, references, and diagnostics through the TypeScript 7 native compiler LSP. |
The native compiler (the Go rewrite formerly known as tsgo) indexes large monorepos roughly 10x faster and with far
less CPU than the official typescript-lsp plugin, which spawns typescript-language-server + tsserver.
Requires a TypeScript 7+ tsc binary on PATH (e.g. npm install -g typescript).
/plugin marketplace add CodelyTV/agent-harness
/plugin install ts7-lsp@codely
/plugin disable typescript-lsp@claude-plugins-official
.agents/Each AI agent reads instructions from a different path. Maintaining them separately is error-prone, so this project centralizes everything and uses symlinks so each agent reads from its expected path while the content lives in a single place:
AGENTS.md (one per directory if needed)..agents/skills/ and are shared across agents.make command generates the symlinks each agent expects:| Command | What it does |
|---|---|
make claude-symlinks | Creates a CLAUDE.md → AGENTS.md symlink in every directory that has an AGENTS.md, and links .claude/skills → .agents/skills |
make codex-symlinks | Links .codex/skills → .agents/skills |
make copilot-symlinks | Links .github/skills → .agents/skills |
make cursor-symlinks | Links .cursor/skills → .agents/skills |
make junie-symlinks | Links .junie/skills → .agents/skills |
make opencode-symlinks | Links .opencode/skills → .agents/skills |
export command blocked via hooksThe export command can leak environment variables (tokens, secrets) if an agent runs it. To prevent this, each agent
has a pre-execution hook that blocks any shell command containing export:
| Agent | Hook location | Mechanism |
|---|---|---|
| Claude Code | .claude/settings.json | Uses the if keyword with a glob pattern (Bash(*export*)) to match and block inline |
| Cursor | .cursor/hooks.json + hooks/block-export.sh | Runs a shell script that parses the command via jq and exits with code 2 on match |
| Copilot | .github/hooks/hooks.json + hooks/block-export.sh | Same approach as Cursor, adapted to Copilot's hook input format |
| OpenCode | .opencode/plugins/block-export.ts | A native TypeScript plugin (tool.execute.before) that inspects the command and throws to block |