본문으로 건너뛰기
cccskills
무료GitHub에 공개

test

Run this repo's tests scoped to the current changes — the unit lane (`just test-unit` / a `--filter`ed vitest run) and the e2e lane (`.feature` files selected from `git diff`, run via `just test-quick`), plus which lane a diff needs and where it is safe to run. Triggers on "run tests", "test this", "check if it works", "unit tests", "vitest", "e2e", "test the changes".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md5.1 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Test

Run tests scoped to the current branch's changes. Two lanes: unit (vitest, §Unit lane) and e2e (Cucumber + Playwright, §Steps).

Unit lane — the invocations, so you never re-derive them

Don't go hunting through the justfile or a package.json for how to run vitest here; these four forms are the whole surface. pnpm and vitest are not on a bare $PATH — every form below either is a just recipe or must be prefixed with nix develop -c.

ReachCommand
Whole workspace, fork-freejust test-unit
One packagenix develop -c pnpm --filter <pkg> test:unit — or test:daemon for a daemon-forking package (see below)
One or more filesnix develop -c pnpm --filter <pkg> exec vitest run src/foo.test.ts
Daemon-forking suites (CI / pu box only)just test-daemon
  • A package declares exactly ONE lane script: test:unit or test:daemon. The 13 whose suites fork real daemons or PTYs — kaval, kaval-tui, @kolu/padi, kolu-server, kolu-cli, @kolu/surface, @kolu/surface-daemon, @kolu/surface-daemon-supervisor, @kolu/surface-remote, @kolu/port-forward, kolu-pty, kolu-pi, kolu-claude-code — declare test:daemon, so just test-unit skips them; everything else declares test:unit. pnpm --filter <pkg> test:unit on a daemon-lane package fails with "no script" — read its package.json rather than guessing. A per-package test:daemon still needs KOLU_DAEMON_TESTS=1 to un-skip its gated blocks, plus the venue gate below.
  • <pkg> is the name from that package's own package.json, and it is not uniformly @kolu/… — the apps are bare (kolu-server, kolu-client, kolu-common) while the libraries are scoped (@kolu/surface-remote). Read the name; don't guess it. --filter repeats to span packages: pnpm --filter kolu-server --filter @kolu/surface-remote test:unit.
  • A fresh worktree has no node_modules. just test-unit / just test-daemon depend on the install recipe, so they bootstrap themselves; the two --filter forms do not — run just install once first when node_modules/ is absent, rather than reading a missing-module error as a broken test.
  • just test-daemon never runs beside a live kolu. Its suites fork real kaval/padi daemons and PTYs; a workstation run OOM-reaped production kaval in #1375. Apply the same venue gate as step 4 below.
  • Narrow to the packages the diff touches — the whole-workspace run is the fallback, not the default, when you already know which package changed.

Steps

  1. Identify changed files: Run git diff master...HEAD --name-only to list files changed on this branch.
  2. Select relevant feature files: Match changed files to .feature files under packages/tests/features/. Use file names, component names, and domain knowledge to find the right scenarios.
  3. Decide whether to run e2e:
    • If changes touch packages/client/src/, packages/tests/, or packages/common/src/ — run the matching feature files.
    • If changes are purely server-internal (packages/server/src/ only) with no UI impact — the unit lane may suffice; run it with the §Unit lane invocations. Skip e2e if no relevant scenarios exist.
  4. Decide where it runs — pu box, not locally, whenever production is live. just test-quick builds the client and spawns a server: that is heavy work, and it goes on an ephemeral pu box (see /pu / /evidence) any time systemctl --user is-active kolu is active (the normal case). A pile-up of local e2e runs OOM-SIGKILLed production kolu.service beside this command before — "fast" is not "safe to run beside production." Apply /dev-server §0's local-vs-pu venue gate before invoking it, and run locally only when production is inactive here.
  5. Run: just test-quick features/foo.feature (or just test-quick features/foo.feature:42 for a single scenario).
  6. Re-run the feature-scoped suite after later commits touching that feature's path — before you push. A green run at commit N is no evidence about commit N+4: a simplify/police/debate cleanup lands in the same files and nothing re-exercises them. One feature file is ~8 s, far cheaper than a CI cycle, and it is the only thing that catches such a regression locally. In #1982 the ports scenarios were verified at f199c421, four cleanup commits followed, and CI became the first thing to exercise the final tree — surfacing a false-green e2e guard as a phantom product bug.

just test-quick is fast — no nix build, no separate dev server needed — but fast is not local-by-default: see step 4.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

blog-post

무료

Write a kolu blog post grounded in the real build history — mine the Claude Code session logs behind a feature for the actual story (for large efforts, fan out over the transcripts with an ultracode workflow), draft it in the author's voice, and wire it into the Astro site. Use when asked to write a blog post or engineering essay about something that was built, especially one that should read as a narrative of what actually happened rather than invented marketing copy.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

juspay/kolu822026년 10월 19일 업데이트

ci

무료

Run this repo's CI end-to-end — the kolu-specific procedure on top of the odu runner: the odu MCP front door, banned opt-out flags, linux-only platform pinning, venue-pool leasing, fail-fast surfacing, e2e timing evidence, and the green-gate. Triggers on "run CI", "drive CI", "re-run the pipeline", "close the red check", "warm the pool". Runner mechanics live in the `/odu` skill.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

juspay/kolu822026년 10월 19일 업데이트

Launch the kolu dev server on two RANDOM free ports so it never collides with the running production `kolu.service`, remember the ports for the rest of the session, and tear down only the dev instance. Load before running the app locally — for evidence capture, driving a live kolu with the chrome-devtools MCP, or any `just dev` you'd otherwise run by hand. Triggers on "run kolu locally", "launch the dev server", "boot kolu", "drive a live kolu", "start the app to screenshot it", or before pointing chrome-devtools at a local kolu.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

juspay/kolu822026년 10월 19일 업데이트

diataxis

무료

Classify, write, and audit documentation per Diátaxis (diataxis.fr) — the four-quadrant method (tutorials · how-to guides · reference · explanation). Encodes the compass as a decision procedure, each quadrant's contract as hard rules, and an executable mixed-mode audit. Project-agnostic; the per-repo doc-location mapping lives in a repo rule of the project's own (kolu: `.apm/instructions/diataxis.instructions.md`). Use when writing any user-facing doc, structuring a docs site, or auditing existing docs for mixed modes.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

juspay/kolu822026년 10월 19일 업데이트

evidence

무료

Produce visual PR evidence — a screenshot or video — whenever a change has on-screen impact. Tests are never a substitute; a change can be backend by cause and visible by effect. Capture via the project's e2e harness on a pu box, or by driving a live kolu with the chrome-devtools MCP; host on a GitHub release and post a `## Evidence` comment. Triggers on "post evidence", "screenshot the change", "record a video of this", "show it working", "prove it", or finishing any change whose effect is visible on screen.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

juspay/kolu822026년 10월 19일 업데이트

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

juspay/kolu822026년 10월 19일 업데이트

juspay의 스킬 모두 보기

이 스킬의 문제 신고