Skip to content
Back to skills

Sk Code Opencode

ASecurity

sk-code OPENCODE surface: system-code evidence (TypeScript/Python/shell/Rust/config standards, language-agnostic patterns, hooks, alignment verification, and skill/agent/command/MCP authoring checklists) plus shared implement/debug/verify workflow doctrine.

  • 36 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 21, 2026
documentationjavascripttypescriptpythonrustgojavashellbashtestingcode-review

Works with

  • cli
  • api
  • mcp

Security analysis

A100/100

Pro scans all 20 files and shows the line behind each finding

Scanned October 1, 2026

npx -y skills add MichelKerkmeester/opencode--spec-kit-skilled-agent-orchestration --skill sk-code-opencode --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Sk Code Opencode?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Sk Code Opencode
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/michelkerkmeester-sk-code-opencode-10c55f57/badge)](https://www.skillsdirectory.com/skills/michelkerkmeester-sk-code-opencode-10c55f57)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: sk-code-opencode
description: "sk-code OPENCODE surface: system-code evidence (TypeScript/Python/shell/Rust/config standards, language-agnostic patterns, hooks, alignment verification, and skill/agent/command/MCP authoring checklists) plus shared implement/debug/verify workflow doctrine."
allowed-tools: [Read, Bash, Grep, Glob]
version: 1.0.1.0
metadata:
  author: OpenCode
  family: sk-code
  packetKind: surface
---

<!-- Keywords: opencode, system-code, typescript, python, shell, rust, jsonc, config, mcp, skill-authoring, agent-authoring, command-authoring, hooks, alignment-verifier, surface-evidence, sk-code -->

# opencode Surface — System-Code Evidence

**Domain evidence** and shared workflow doctrine for OpenCode system code (the `.skilled/` tree: skills, agents, commands, plugins, MCP servers, config, changelogs, and runtime bridge wiring). This surface owns the implement -> debug -> verify phases through the workflow references below, then slices evidence by the detected language so a TypeScript task never pulls the Python/shell/config guides.

Detection is two-step. First, the surface trigger is work under `.skilled/` (including `SKILL.md`, descriptors, commands, agents, plugins, MCP servers, assets, scripts, and changelogs). Second, once the OpenCode surface is selected, file extensions and local markers select the language trio: `.cjs`/`.mjs`/`.js` -> JavaScript, `.ts`/`.tsx`/`.mts`/`.d.ts` -> TypeScript, `.py` plus `argparse` -> Python, `.sh`/`.bash` -> shell, `.rs` -> Rust, `.json`/`.jsonc`/`.yaml`/`.yml` plus `graph-metadata` or `spec-folder` -> config. For Rust, when no `.rs` file is present, local `Cargo.toml`/`Cargo.lock` markers select it after the OpenCode surface is established; napi-rs and wasm-bindgen vocabulary are additional intent signals, not cross-project surface detectors.

## 1. WHEN THE HUB BUNDLES THIS

- The task touches `.skilled/` system code — a skill, agent, command, plugin, MCP server, or descriptor/config.
- The active workflow phase needs a language standard, a language-agnostic organization pattern, a hook contract, an alignment-verification procedure, or an authoring checklist.
- This surface owns edits, tests, and verification through the workflow references; hand off formal findings-first review to `code-review` and author-side quality gates to `code-quality`.

---

## 2. REFERENCE MAP

Language standards — after `.skilled/` selects this surface, load the exact split resources for the detected language:
- TypeScript — `references/typescript/style-guide/overview-strict-and-naming.md`, `references/typescript/style-guide/formatting-imports-and-coexistence.md`, `references/typescript/quality-standards/overview-and-type-system.md`, `references/typescript/quality-standards/tsdoc-errors-and-async.md`, `references/typescript/quality-standards/tsconfig-and-modules.md`, `references/typescript/quick-reference/template-naming-and-types.md`, `references/typescript/quick-reference/imports-errors-and-tsconfig.md`
- Python — `references/python/style-guide.md`, `references/python/quality-standards.md`, `references/python/quick-reference.md`
- Shell — `references/shell/style-guide/overview-structure-and-naming.md`, `references/shell/style-guide/variables-functions-and-output.md`, `references/shell/quality-standards/overview-and-priority-blockers.md`, `references/shell/quality-standards/validation-security-and-shellcheck.md`, `references/shell/quick-reference/template-variables-and-loops.md`, `references/shell/quick-reference/functions-strings-and-checklist.md`
- Rust — `references/rust/style-guide/overview-and-file-header.md`, `references/rust/style-guide/toolchain-and-project-structure.md`, `references/rust/style-guide/naming-conventions.md`, `references/rust/style-guide/formatting-and-imports.md`, `references/rust/style-guide/commenting-and-rustdoc.md`, `references/rust/style-guide/interop-model.md`, `references/rust/style-guide/interop-errors-and-parity.md`, `references/rust/quality-standards/overview-and-data-ownership.md`, `references/rust/quality-standards/modeling-collections-and-api.md`, `references/rust/quality-standards/docs-errors-and-async.md`, `references/rust/quality-standards/build-and-organization.md`, `references/rust/quality-standards/determinism-and-parity.md`, `references/rust/quick-reference/overview-and-boundary-template.md`, `references/rust/quick-reference/naming-ordering-and-signatures.md`, `references/rust/quick-reference/collections-imports-and-errors.md`, `references/rust/quick-reference/rustdoc-and-cargo.md`, `references/rust/quick-reference/determinism-parity-and-related.md`
- Config (JSON/JSONC/YAML descriptors and route assets) — `references/config/style-guide.md`, `references/config/quality-standards.md`, `references/config/quick-reference.md`, `assets/checklists/config-checklist.md`
- JavaScript (CommonJS/ESM plugins) — `references/javascript/style-guide.md`, `references/javascript/quality-standards/overview-modules-and-docs.md`, `references/javascript/quality-standards/security-testing-and-exemptions.md`, `references/javascript/quick-reference.md`

Language-agnostic shared tier (`references/shared/`, always kept within OpenCode regardless of language):
- `references/shared/universal-patterns/naming-and-commenting.md`, `references/shared/universal-patterns/organization-security-and-examples.md`, `references/shared/code-organization/overview-and-module-organization.md`, `references/shared/code-organization/imports-and-exports.md`, `references/shared/code-organization/directory-and-test-conventions.md`
- `hooks.md` — runtime hook entrypoints, checked-in Claude wiring, OpenCode plugin-bridge delivery, and wrapper reachability; defer to that file for current hook infrastructure instead of duplicating it here
- `alignment-verification-automation.md` — the alignment-drift verifier

Authoring and validation assets: `assets/checklists/agent-authoring.md`, `assets/checklists/command-authoring.md`, `assets/checklists/javascript-checklist.md`, `assets/checklists/mcp-server-authoring.md`, `assets/checklists/python-checklist.md`, `assets/checklists/rust-checklist/overview-and-p0-parity.md`, `assets/checklists/rust-checklist/p0-safety-and-boundary-discipline.md`, `assets/checklists/rust-checklist/p1-required.md`, `assets/checklists/rust-checklist/p2-evidence-validation-and-resources.md`, `assets/checklists/shell-checklist.md`, `assets/checklists/skill-authoring.md`, `assets/checklists/typescript-checklist.md`, `assets/checklists/universal-checklist.md`, `assets/scripts/README.md`, `references/shared/alignment-verification-automation.md`, `references/shared/hooks.md`

Workflow: the implement -> debug -> verify phases use the split shared, language, hook, and alignment resources above; no root-level `workflow-*.md` trio is assumed.

## 2b. SMART ROUTING (machine-readable)

This block is the deterministic projection of code-opencode's own reference/asset routing; keep it in sync with the parent hub union.

```python
# code-opencode owns its intent -> reference/asset routing. Paths are relative to
# this skill root. The parent sk-code hub RESOURCE_MAP is the union of this map
# (re-prefixed with sk-code-opencode/) and the sibling code-webflow map plus the
# parent-owned universal/shared tier. The sk-code-router-sync.vitest.ts suite
# that enforced that equality was deleted with the skill-benchmark lane, so
# nothing checks it now. verify_alignment_drift.py is markdown-blind by default and does
# not check this map unless invoked with --check-router (dead-route existence
# only), so it is not the equality authority.
DEFAULT_RESOURCE = [
    "references/shared/universal-patterns/naming-and-commenting.md",
    "references/shared/universal-patterns/organization-security-and-examples.md",
    "references/shared/code-organization/overview-and-module-organization.md",
    "references/shared/code-organization/imports-and-exports.md",
    "references/shared/code-organization/directory-and-test-conventions.md",
]

INTENT_SIGNALS = {
    "IMPLEMENTATION":     {"weight": 1, "keywords": ["implement", "build", "create", "feature", "component", "module", "authoring"]},
    "CODE_QUALITY":       {"weight": 1, "keywords": ["lint", "format", "quality gate", "naming", "standards", "code smell"]},
    "VERIFICATION":       {"weight": 1, "keywords": ["verify", "passing", "type-check", "alignment drift", "completion claim"]},
    "HOOKS":              {"weight": 1, "keywords": ["session-prime", "user-prompt-submit", "pre-tool-use", "post-tool-use"]},
    "CONFIG":             {"weight": 1, "keywords": ["jsonc", ".json", ".jsonc", "descriptor", "config schema"]},
    "JAVASCRIPT":         {"weight": 1, "keywords": ["javascript", ".js", "commonjs", ".cjs", ".mjs"]},
    "TYPESCRIPT":         {"weight": 1, "keywords": ["typescript", ".ts", ".tsx"]},
    "PYTHON":             {"weight": 1, "keywords": ["python", ".py", "docstring"]},
    "SHELL":              {"weight": 1, "keywords": ["shell script", "bash", ".sh"]},
    "RUST":               {"weight": 1, "keywords": ["rust", ".rs", "cargo.toml", "cargo.lock", "napi-rs", "napi_rs", "#[napi]", "wasm-bindgen", "wasm_bindgen", "#[wasm_bindgen]", "wasi", "cdylib"]},
}

RESOURCE_MAP = {
    "IMPLEMENTATION": [
        "references/shared/universal-patterns/naming-and-commenting.md",
        "references/shared/universal-patterns/organization-security-and-examples.md",
        "references/shared/code-organization/overview-and-module-organization.md",
        "references/shared/code-organization/imports-and-exports.md",
        "references/shared/code-organization/directory-and-test-conventions.md",
        "assets/checklists/agent-authoring.md",
        "assets/checklists/command-authoring.md",
        "assets/checklists/skill-authoring.md",
        "assets/checklists/mcp-server-authoring.md",
    ],
    "CODE_QUALITY": [
        "assets/checklists/universal-checklist.md",
        "assets/checklists/javascript-checklist.md",
        "assets/checklists/typescript-checklist.md",
        "assets/checklists/python-checklist.md",
        "assets/checklists/shell-checklist.md",
        "assets/checklists/rust-checklist/overview-and-p0-parity.md",
        "assets/checklists/rust-checklist/p0-safety-and-boundary-discipline.md",
        "assets/checklists/rust-checklist/p1-required.md",
        "assets/checklists/rust-checklist/p2-evidence-validation-and-resources.md",
    ],
    "VERIFICATION": [
        "references/shared/alignment-verification-automation.md",
        "assets/scripts/README.md",
    ],
    "HOOKS": [
        "references/shared/hooks.md",
    ],
    "CONFIG": [
        "references/config/style-guide.md",
        "references/config/quality-standards.md",
        "references/config/quick-reference.md",
        "assets/checklists/config-checklist.md",
    ],
    "JAVASCRIPT": [
        "references/javascript/style-guide.md",
        "references/javascript/quality-standards/overview-modules-and-docs.md",
        "references/javascript/quality-standards/security-testing-and-exemptions.md",
        "references/javascript/quick-reference.md",
    ],
    "TYPESCRIPT": [
        "references/typescript/style-guide/overview-strict-and-naming.md",
        "references/typescript/style-guide/formatting-imports-and-coexistence.md",
        "references/typescript/quality-standards/overview-and-type-system.md",
        "references/typescript/quality-standards/tsdoc-errors-and-async.md",
        "references/typescript/quality-standards/tsconfig-and-modules.md",
        "references/typescript/quick-reference/template-naming-and-types.md",
        "references/typescript/quick-reference/imports-errors-and-tsconfig.md",
    ],
    "PYTHON": [
        "references/python/style-guide.md",
        "references/python/quality-standards.md",
        "references/python/quick-reference.md",
    ],
    "SHELL": [
        "references/shell/style-guide/overview-structure-and-naming.md",
        "references/shell/style-guide/variables-functions-and-output.md",
        "references/shell/quality-standards/overview-and-priority-blockers.md",
        "references/shell/quality-standards/validation-security-and-shellcheck.md",
        "references/shell/quick-reference/template-variables-and-loops.md",
        "references/shell/quick-reference/functions-strings-and-checklist.md",
    ],
    "RUST": [
        "references/rust/style-guide/overview-and-file-header.md",
        "references/rust/style-guide/toolchain-and-project-structure.md",
        "references/rust/style-guide/naming-conventions.md",
        "references/rust/style-guide/formatting-and-imports.md",
        "references/rust/style-guide/commenting-and-rustdoc.md",
        "references/rust/style-guide/interop-model.md",
        "references/rust/style-guide/interop-errors-and-parity.md",
        "references/rust/quality-standards/overview-and-data-ownership.md",
        "references/rust/quality-standards/modeling-collections-and-api.md",
        "references/rust/quality-standards/docs-errors-and-async.md",
        "references/rust/quality-standards/build-and-organization.md",
        "references/rust/quality-standards/determinism-and-parity.md",
        "references/rust/quick-reference/overview-and-boundary-template.md",
        "references/rust/quick-reference/naming-ordering-and-signatures.md",
        "references/rust/quick-reference/collections-imports-and-errors.md",
        "references/rust/quick-reference/rustdoc-and-cargo.md",
        "references/rust/quick-reference/determinism-parity-and-related.md",
    ],
}
```

---

## 3. SURFACE STANDARDS (the non-negotiables)

- **Plugins never write to the TUI.** OpenCode plugins must not print to the process stdout/stderr (no overlay on the chat input); user/agent-visible output goes through system-context injection, tools, or append-only log files; DEBUG-gated stderr is allowed only behind an env flag. See `references/javascript/quality-standards/overview-modules-and-docs.md` and the plugin exemption tier.
- **Descriptors are load-bearing.** `graph-metadata.json` / `description.json` shape drives discovery; validate JSON/JSONC against `references/config/quality-standards.md`.
- **Alignment drift is a verification gate.** System-code changes re-run both live sk-code drift guards through the single entry point `scripts/run-all-drift-guards.sh` before any completion claim: `assets/scripts/verify_alignment_drift.py` (language integrity, plus dead RESOURCE_MAP routes with `--check-router`) and `assets/scripts/verify_stack_folders.py` (language reference folders resolve). The third guard, the `sk-code-router-sync.vitest.ts` suite, was deleted with the skill-benchmark lane, so the wrapper no longer runs it. See `references/shared/alignment-verification-automation.md`. The wrapper scans repository content only: files git tracks, so ignored trees, sibling worktrees and vendored clones stay out of a gate they can never pass. It exits 0 on a clean tree, so a completion claim requires wrapper rc 0 rather than a delta against a backlog.
- **Rust preserves the TypeScript contract.** Rust napi-rs, WASM/WASI, and sidecar modules are compatibility implementations, not independent behavior authorities. JS-visible bytes, six-decimal numeric behavior, comparator tie-breaks, deterministic IDs, collection order, DTOs, and error shapes must remain identical to the TypeScript oracle.
- **Touched-language set, not one-per-task.** Most `.skilled/` tasks touch a single language — keep that slice tight and lean on the shared tier for cross-language rules. An interop task that spans a language pair (a napi-rs / WASM / sidecar Rust module held to its TypeScript oracle) legitimately touches both languages: the router slices to the set the task actually touches and loads both trios plus the shared tier, because you cannot hold Rust byte-identical to TypeScript without seeing both standards.

---

## 4. ASSETS AND OTHER SURFACE AREAS — ON-DEMAND

Component authoring (`assets/checklists/`): `skill-authoring.md`, `agent-authoring.md`, `command-authoring.md`, `mcp-server-authoring.md`

Language quality gates (`assets/checklists/`): `universal-checklist.md`, `typescript-checklist.md`, `python-checklist.md`, `shell-checklist.md`, `javascript-checklist.md`, `rust-checklist/` (split into topic parts), `config-checklist.md`

Verifier assets (`assets/scripts/`): alignment-drift and stack-folder verifier scripts used by this surface. `scripts/run-all-drift-guards.sh` is the single entry point that runs both of them as one gate (non-zero if either fails).

Changelog directories (`changelog/`): real skill and packet changelog files are part of the OpenCode surface inventory, not out-of-scope documentation noise.

Daemon IPC/socket wiring: daemon-backed CLIs and plugin bridges resolve runtime Unix socket paths such as `daemon-ipc.sock`; sockets are runtime artifacts, so checked-in evidence lives in launcher, bridge, and config files rather than in committed `.sock` files.

Spec-folder authoring lives in system-spec-kit (`references/workflows/spec-folder-write-recipe.md` + `spec-folder-authoring-checklist.md`), not in this surface. Checklists are pulled on demand by the active workflow phase.

Files in this skill

  • README.md9.1 KB
  • SKILL.md16.9 KB
  • assets/checklists/agent-authoring.md4.5 KB
  • assets/checklists/command-authoring.md5.5 KB
  • assets/checklists/config-checklist.md7 KB
  • assets/checklists/javascript-checklist.md8.2 KB
  • assets/checklists/mcp-server-authoring.md5.1 KB
  • assets/checklists/python-checklist.md6.7 KB
  • assets/checklists/rust-checklist/overview-and-p0-parity.md10.1 KB
  • assets/checklists/rust-checklist/p0-safety-and-boundary-discipline.md6.3 KB
  • assets/checklists/rust-checklist/p1-required.md9.8 KB
  • assets/checklists/rust-checklist/p2-evidence-validation-and-resources.md7.6 KB
  • assets/checklists/shell-checklist.md6.7 KB
  • assets/checklists/skill-authoring.md5.6 KB
  • assets/checklists/typescript-checklist.md9.7 KB
  • assets/checklists/universal-checklist.md8.7 KB
  • assets/scripts/README.md3.7 KB
  • assets/scripts/test_verify_alignment_drift.py12 KB
  • assets/scripts/verify_alignment_drift.py25.8 KB
  • assets/scripts/verify_stack_folders.py1.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.