vincentkoc / crawlkit
Maintain and release the crawlkit Go library, preserving downstream compatibility for gitcrawl, slacrawl, discrawl, and notcrawl.
Crawlkit
Purpose
Maintain crawlkit, the shared Go library for crawl app archive infrastructure.
Use this skill to keep shared archive infrastructure reusable, tagged, and safe
for downstream app branches.
When to use
- Editing or reviewing
crawlkit. - Moving common crawl app behavior into the library.
Checking whether
gitcrawl,slacrawl,discrawl, ornotcrawlcan merge
against a releasedcrawlkittag.- Preparing or verifying a
crawlkitGo module release. Investigating shared TUI, snapshot, config, SQLite, mirror, progress, or
control metadata behavior.
Workflow
Locate the
crawlkitcheckout from the current repository, an explicit user
path, or the configured workspace root.Read repo-local
AGENTS.md,README.md,CONTRIBUTING.md, anddocs/publishing.mdbefore release or compatibility work.Keep provider-specific logic out of
crawlkit. Shared mechanics belong in
packages such asconfig,store,snapshot,mirror,state,output,progress,tui,cache, andcontrol.Run the library gate with workspace masking disabled:
GOWORK=off go mod tidy git diff --exit-code -- go.mod go.sum GOWORK=off go vet ./... GOWORK=off go test -count=1 ./...For release checks, verify the signed tag and public Go proxy:
git tag -v <version> GOPROXY=https://proxy.golang.org GONOSUMDB= go list -m github.com/vincentkoc/crawlkit@<version>For downstream readiness, inspect app branches read-only. Confirm they are
clean, rebased, require the releasedcrawlkitversion, and pass:GOWORK=off go test ./... <app> --help <app> --version <app> metadata --json <app> status --json <app> tui --jsonUse temp
HOME,XDG_CONFIG_HOME, andXDG_CACHE_HOMEfor CLI smokes.
Never mutate live app archives.
Inputs
Target task: library edit, release verification, downstream readiness, or TUI
backport.- Optional version tag such as
v0.4.0. - Optional downstream app branch paths.
Outputs
- A clean
crawlkitchange or readiness report. - Validation commands and results.
- Explicit compatibility risks for downstream app branches.
- Local binary rebuild notes only when the user asks for app binaries.