modules/programs/agents/shared/skills/init-bun-test/SKILL.md
Set up bun test in a project (with Effect support if applicable)
npx skillsauth add MichaelVessia/nixos-config init-bun-testInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Set up bun test for this project.
Detect if Effect project:
effect dependencyCreate bunfig.toml:
Standard project:
[test]
root = "./src"
testMatch = ["**/*.test.ts"]
Effect project:
[test]
root = "./src"
testMatch = ["**/*.test.ts"]
Install test dependencies:
Standard project:
bun add -D @types/bun
Effect project:
bun add -D @types/bun @codeforbreakfast/bun-test-effect
Add scripts to package.json:
"test": "bun test",
"test:watch": "bun test --watch"
Create example test file (if no tests exist):
Standard (src/example.test.ts):
import { describe, expect, it } from 'bun:test'
describe('example', () => {
it('works', () => {
expect(1 + 1).toBe(2)
})
})
Effect (src/example.test.ts):
import { describe, expect, it } from '@codeforbreakfast/bun-test-effect'
import { Effect } from 'effect'
describe('example', () => {
it('works', () => {
expect(1 + 1).toBe(2)
})
it.effect('works with Effect', () =>
Effect.gen(function* () {
const result = yield* Effect.succeed(42)
expect(result).toBe(42)
})
)
})
Run tests to verify setup:
bun test
Ask before creating example test file if tests already exist.
tools
User guide for the local squash-safe `stack` CLI for stacked PR/MR repair on GitHub and GitLab. Use when someone asks how to inspect, track, sync, merge, document, or undo stacked pull requests / merge requests in squash-merge repositories. Prefer this tool over GitHub's `gh stack` command for this workflow.
tools
Control herdr from inside it. Manage workspaces and tabs, split panes, spawn agents, read 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).
development
Inspect my self-hosted AutoCaliWeb library. Use when the user asks about AutoCaliWeb, books in Calibre, OPDS status, recent imports, shelves, catalog stats, or wants to search the ebook library.
data-ai
Subscribe a YouTube channel in TubeArchivist, queue its top videos by views from recent uploads, wait for the first file, scan Jellyfin, and rename + lock the channel folder to a friendly display name. Use when the user says "add a youtube channel", "subscribe to <channel>", or wants a curated TubeArchivist + Jellyfin import for a creator.