← All skills
semble-setup
81 / 100 · Low risk
Fine to try. Some of what it can do is expected: a coding skill usually runs build and test commands.
By kochetkov-ma/claude-brewcode (GitHub) · coding · 39 stars · scanned at commit 5da825f
Installs, audits, repairs, updates, enables, reindexes or removes the semble_code semantic code-search MCP for a project. Triggers: semble, semantic code search, semble status, настрой semble, статус semble, переиндексируй, удали semble.
Works with any agent that supports SKILL.md skills.
What this skill can do
Runs commands on your computer
This is disclosed by the author in the skill's SKILL.md or README. Expected for a coding skill.
Found in 82 places.
Show 17 more
- brewcode/skills/semble-setup/SKILL.md, line 166
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 192
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 218
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 239
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 259
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 287
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 303
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 324
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 345
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 375
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 397
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 413
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 443
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 467
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/SKILL.md, line 482
SD="${CLAUDE_SKILL_DIR}" - brewcode/skills/semble-setup/tests/suite-agents.mjs, line 4
import { spawnSync } from 'node:child_process'; - brewcode/skills/semble-setup/tests/suite-agents.mjs, line 53
const r = spawnSync('bash', [SCRIPT, ...args], {
and 62 more places
Downloads and installs other software
This is disclosed by the author in the skill's SKILL.md or README.
Found in 141 places.
Show 17 more
- brewcode/skills/semble-setup/SKILL.md, line 138
| `brew install coreutils` -> `gtimeout` | **soft**: missing `--yes` or `brew`, a failed brew, `SEMBLE_NO_NETWORK`, `SEMBLE_DRY_RUN` stay a *note* | never non-z - brewcode/skills/semble-setup/SKILL.md, line 140
`uv` comes only from `brew`, the pin from `uvx`; narrating a plan is not a gate. Default is uvx-ephemeral (no `uv tool install`: a `semble` on `PATH` blocks on - brewcode/skills/semble-setup/SKILL.md, line 155
> `RC=3` (no `brew`): print the manual fallback `curl -LsSf https://astral.sh/uv/install.sh | sh` without running it, and stop. - brewcode/skills/semble-setup/SKILL.md, line 156
> `RC=0`: `uv`/`uvx` present and the pin resolved; skip 3.1b/3.1c, go to 3.1d. - brewcode/skills/semble-setup/SKILL.md, line 160
Then one `AskUserQuestion`, bundled with known MCP scope/repair choices: *"Run these Homebrew installs now?"* — `Install` (runs exactly those commands) / `Cance - brewcode/skills/semble-setup/SKILL.md, line 186
Row 2 prints the `brew install coreutils` line from `.commands` and asks: *"Install `coreutils` for `gtimeout`? Optional — `sc_timeout` is already bounded by a - brewcode/skills/semble-setup/SKILL.md, line 299
The first run downloads the embedding model: tell the user first, and raise the Bash tool timeout to **600000 ms**. `smoke` runs the CLI (`uvx --from 'semble[mc - brewcode/skills/semble-setup/SKILL.md, line 316
> **⏭️ SKIPPED is not ❌** — `RC=3` + `"status":"skipped"` (`SEMBLE_NO_NETWORK=1`, `SEMBLE_DRY_RUN=1`, no `uvx`): the query never ran, nothing broken, nothing pr - brewcode/skills/semble-setup/SKILL.md, line 439
Here `<id>` = `brewcode:semble-setup`; `cv` = `.guidance.content_version` (empty -> `?`) of the Step 1 **Before** snapshot -> the Step 6 re-run. `IRC=3` -> skip - brewcode/skills/semble-setup/SKILL.md, line 450
elif [ "$IRC" -eq 3 ] && [ "$MRC" -eq 0 ]; then echo "⏭️ PRECONDITION — uv/uvx absent" - brewcode/skills/semble-setup/references/install-chain.md, line 13
| `.brew.present` | whether `brew install coreutils` is possible | - brewcode/skills/semble-setup/references/install-chain.md, line 19
brew install uv - brewcode/skills/semble-setup/references/install-chain.md, line 20
brew install coreutils - brewcode/skills/semble-setup/references/install-chain.md, line 21
uvx --from 'semble[mcp]==0.6.2' semble --version - brewcode/skills/semble-setup/references/intent-routing.md, line 53
The install offer covers `brew install uv` on `all --json` exit `4` and optional `brew install coreutils` - brewcode/skills/semble-setup/references/mcp-and-cache.md, line 24
claude mcp add-json semble_code -s user '{"type":"stdio","command":"uvx","args":["--from","semble[mcp]==0.6.2","semble","--content","code","docs","config"],"env - brewcode/skills/semble-setup/references/mcp-and-cache.md, line 32
-- uvx --from 'semble[mcp]==0.6.2' semble --content code docs config
and 121 more places
Sends data to these websites: astral.sh, api.github.com
This is disclosed by the author in the skill's SKILL.md or README. It runs automatically when the plugin is installed.
Found in 8 places.
Show 5 more
- brewcode/skills/semble-setup/scripts/semble-install.sh, line 115
raise precondition "brew is not installed - run this by hand: curl -LsSf https://astral.sh/uv/install.sh | sh" - brewcode/skills/semble-setup/tests/suite-agents.mjs, line 247
before: '---\nname: t\ntools: [Read]\ndisallowedTools: [WebFetch, WebSearch]\n---\nBody\n', - brewcode/skills/semble-setup/tests/suite-agents.mjs, line 248
after: `---\nname: t\ntools: [Read, ${SEARCH}, ${RELATED}]\ndisallowedTools: [WebFetch, WebSearch]\n---\nBody\n`, - brewcode/skills/semble-setup/tests/suite-status.mjs, line 1008
String(ubj.note).includes('curl -LsSf https://astral.sh/uv/install.sh | sh'), true, - brewcode/hooks/session-start.mjs, line 116
const res = await fetch(url, { signal: controller.signal });
Changes files outside its own folder
This is disclosed by the author in the skill's SKILL.md or README.
Found in 19 places.
Show 16 more
- brewcode/skills/semble-setup/tests/suite-core.mjs, line 1308
writeFileSync(MUT, `#!/usr/bin/env bash - brewcode/skills/semble-setup/tests/suite-core.mjs, line 1440
writeFileSync(HALF, `#!/usr/bin/env bash\nprintf '{"half":' > "\${SEMBLE_TEST_HOME}/.claude.json"\nexit 1\n`); - brewcode/skills/semble-setup/tests/suite-integration.mjs, line 110
writeFileSync(CLAUDE_STUB, `#!/usr/bin/env bash - brewcode/skills/semble-setup/tests/suite-status.mjs, line 89
writeFileSync(join(BIN, 'claude'), `#!/usr/bin/env bash - brewcode/skills/semble-setup/tests/suite-status.mjs, line 98
writeFileSync(join(BIN2, 'brew'), `#!/usr/bin/env bash - brewcode/skills/semble-setup/tests/suite-status.mjs, line 106
writeFileSync(join(BIN3, 'brew'), `#!/usr/bin/env bash - brewcode/skills/semble-setup/tests/suite-status.mjs, line 112
writeFileSync(TIMEOUT_STUB, `#!/usr/bin/env bash - brewcode/skills/semble-setup/tests/suite-status.mjs, line 213
writeFileSync(stub, '#!/usr/bin/env bash\nset -euo pipefail\ncat "${SEMBLE_STUB_GUIDANCE:?}"\n'); - brewcode/skills/semble-setup/tests/suite-status.mjs, line 249
writeFileSync(MCP_STUB, `#!/usr/bin/env bash - brewcode/skills/semble-setup/tests/suite-status.mjs, line 451
writeFileSync(GUID_STUB, `#!/usr/bin/env bash - brewcode/skills/semble-setup/tests/suite-status.mjs, line 628
writeFileSync(stub, `#!/usr/bin/env bash - brewcode/skills/semble-setup/tests/suite-status.mjs, line 853
writeFileSync(failing, '#!/usr/bin/env bash\nexit 7\n'); - brewcode/skills/semble-setup/tests/suite-status.mjs, line 875
writeFileSync(MCP_STUB, '#!/usr/bin/env bash\nexit 7\n'); - brewcode/skills/semble-setup/tests/suite-status.mjs, line 884
writeFileSync(MCP_STUB, '#!/usr/bin/env bash\necho "not json at all"\n'); - brewcode/skills/semble-setup/tests/suite-status.mjs, line 893
writeFileSync(MCP_STUB, '#!/usr/bin/env bash\necho "[1,2,3]"\n'); - brewcode/skills/semble-setup/tests/suite-status.mjs, line 1372
writeFileSync(join(OKBIN, 'claude'), '#!/usr/bin/env bash\necho stub-ok\n');
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'semble-setup' ] || [ -L ~/.agents/skills/'semble-setup' ]; then echo 'A skill folder named semble-setup already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/kochetkov-ma/claude-brewcode' "$d" && git -C "$d" checkout --quiet '5da825f1d535d9658f0de0893529c6ce06a613a5' -- 'brewcode/skills/semble-setup' && mkdir -p ~/.agents/skills && cp -R "$d"/'brewcode/skills/semble-setup' ~/.agents/skills/'semble-setup' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'semble-setup' ~/.claude/skills/'semble-setup' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for kochetkov-ma/claude-brewcode shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/kochetkov-ma/claude-brewcode/)
Score history
| Date | Version | Score |
|---|
| 2026-11-13 | 5da825f | 81 |
| 2026-11-07 | 9ddf5c0 | 81 |