Skip to content

Releases: krowkcom/cli

v0.8.2

Choose a tag to compare

@github-actions github-actions released this 29 Aug 10:17

Changelog

  • 070464e chore: release 0.8.2
  • 4aa9033 feat(output): say it the way a person would, on the terminal only (#45)
  • f10ea69 fix(output): lead human error output with prose, not the wire code

Install

# npm — the bare `krowk` name is blocked by npm's typosquat filter
npx @krowk/cli push screenshot.png

# Direct download — no runtime, no package manager
curl -sSfL https://github.com/krowkcom/cli/releases/download/v0.8.2/krowk_0.8.2_$(uname -s | tr A-Z a-z)_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
  | tar -xz -C /usr/local/bin krowk krowk-mcp

# From source
go install github.com/krowkcom/cli/cmd/krowk@v0.8.2

checksums.txt covers every archive on this release.

v0.8.1

Choose a tag to compare

@github-actions github-actions released this 28 Aug 06:44

Changelog

  • 6f7f3f5 chore: release 0.8.1
  • d3bb9b9 feat: greet with the square mark

Install

# npm — the bare `krowk` name is blocked by npm's typosquat filter
npx @krowk/cli push screenshot.png

# Direct download — no runtime, no package manager
curl -sSfL https://github.com/krowkcom/cli/releases/download/v0.8.1/krowk_0.8.1_$(uname -s | tr A-Z a-z)_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
  | tar -xz -C /usr/local/bin krowk krowk-mcp

# From source
go install github.com/krowkcom/cli/cmd/krowk@v0.8.1

checksums.txt covers every archive on this release.

v0.8.0

Choose a tag to compare

@github-actions github-actions released this 27 Aug 10:35

Changelog

  • 6d7f2d3 chore: release 0.8.0
  • 01278ba krowk.links: --link on the CLI, links on the MCP push tool (#43)
  • dec4df6 fix: action hardening — version pinning, bash 3.2, CI branch detection (#42)
  • f002071 feat: GitHub Action wrapping the CLI (#41)

Install

# npm — the bare `krowk` name is blocked by npm's typosquat filter
npx @krowk/cli push screenshot.png

# Direct download — no runtime, no package manager
curl -sSfL https://github.com/krowkcom/cli/releases/download/v0.8.0/krowk_0.8.0_$(uname -s | tr A-Z a-z)_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
  | tar -xz -C /usr/local/bin krowk krowk-mcp

# From source
go install github.com/krowkcom/cli/cmd/krowk@v0.8.0

checksums.txt covers every archive on this release.

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 26 Aug 13:21

Changelog

  • 8d4a634 chore: release 0.7.0
  • 301c6c8 test: cover devregistry flag wiring, fix stale docs
  • c3d407d refactor!: drop the registry serve command from the CLI
  • 05a237b Measure an SVG too, and stop claiming a release note for a command being removed
  • 5f1ce48 Read a WebP header too, so the stand-in has no format the registry measures
  • 518978d Measure an image in the stand-in, so the wire contract does not drift
  • 4d6905e chore(ci): switch opencode review model to ox-alpha-free
  • c8e398c chore(ci): bump checkout/setup-go to v7 in opencode-review workflow

Install

# npm — the bare `krowk` name is blocked by npm's typosquat filter
npx @krowk/cli push screenshot.png

# Direct download — no runtime, no package manager
curl -sSfL https://github.com/krowkcom/cli/releases/download/v0.7.0/krowk_0.7.0_$(uname -s | tr A-Z a-z)_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
  | tar -xz -C /usr/local/bin krowk krowk-mcp

# From source
go install github.com/krowkcom/cli/cmd/krowk@v0.7.0

checksums.txt covers every archive on this release.

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 24 Aug 11:28

Changelog

  • a9ddc36 Move the caption, destination and paste-block notes under v0.6.0
  • f5e054d Tell the skill never to paste a bare link (#38)
  • 0c97410 End with the block, and stop assembling one (#37)
  • 5b4a47e Let a push print what the destination wants (#36)
  • 2f595e9 Let a push say what the file shows, on the file (#35)

Install

# npm — the bare `krowk` name is blocked by npm's typosquat filter
npx @krowk/cli push screenshot.png

# Direct download — no runtime, no package manager
curl -sSfL https://github.com/krowkcom/cli/releases/download/v0.6.0/krowk_0.6.0_$(uname -s | tr A-Z a-z)_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
  | tar -xz -C /usr/local/bin krowk krowk-mcp

# From source
go install github.com/krowkcom/cli/cmd/krowk@v0.6.0

checksums.txt covers every archive on this release.

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 21 Aug 09:13

Changelog

  • a4d0062 Move the --jq release notes under v0.5.0
  • 3b512c8 Drop the stray repo config, and cut a clipped message clean of its last rune
  • 8726718 Redact a whole credential, keep the reason for a failure, and hand values over intact
  • 669632b Never let a filter hand back what it was meant to read one field of
  • f451771 Fold a copy, hold the output back, and refuse the flag where it would do nothing
  • f058c11 Cut the failure message where the preview starts, not where a colon does
  • da13d6b Say what --jq does where a reader of the release notes will look
  • c0a342c Run every rendered result past the filter, and nothing else
  • b0e6c65 Compile jq in, so a result can be read without a pipe
  • 8280d81 Record the rest of the pasted-value changes in the changelog
  • f05b500 Hold the pasted-value rules on the arguments beside the slug
  • bc54429 Cut the reader back to the links krowk actually hands out
  • 2c2204f Say nothing of what was pasted, and read the DNS spelling only where it lives
  • ebb464b Read a link the way a link is built, and refuse what it cannot settle
  • e0ade47 Read a slug out of a link only where a link really carries one
  • 94d401f Start a changelog, beginning with the pasted-link leniency
  • 0b712e1 Take the pasted link wherever a slug is asked for
  • bccdd1f Link krowk.com from the README mark and license line

Install

# npm — the bare `krowk` name is blocked by npm's typosquat filter
npx @krowk/cli push screenshot.png

# Direct download — no runtime, no package manager
curl -sSfL https://github.com/krowkcom/cli/releases/download/v0.5.0/krowk_0.5.0_$(uname -s | tr A-Z a-z)_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
  | tar -xz -C /usr/local/bin krowk krowk-mcp

# From source
go install github.com/krowkcom/cli/cmd/krowk@v0.5.0

checksums.txt covers every archive on this release.

v0.4.1

Choose a tag to compare

@github-actions github-actions released this 14 Aug 07:19

Changelog

  • 2cfa9cf Address every harness in the setup prompt, not just Claude Code
  • f5f6c3d Add the agent setup prompt

Install

# npm — the bare `krowk` name is blocked by npm's typosquat filter
npx @krowk/cli push screenshot.png

# Direct download — no runtime, no package manager
curl -sSfL https://github.com/krowkcom/cli/releases/download/v0.4.1/krowk_0.4.1_$(uname -s | tr A-Z a-z)_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
  | tar -xz -C /usr/local/bin krowk krowk-mcp

# From source
go install github.com/krowkcom/cli/cmd/krowk@v0.4.1

checksums.txt covers every archive on this release.

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 13 Aug 07:14

Changelog

  • 3543843 Teach krowk to upgrade itself, and to say when it should
  • d88d552 Match the README mark to the favicon

Install

# npm — the bare `krowk` name is blocked by npm's typosquat filter
npx @krowk/cli push screenshot.png

# Direct download — no runtime, no package manager
curl -sSfL https://github.com/krowkcom/cli/releases/download/v0.4.0/krowk_0.4.0_$(uname -s | tr A-Z a-z)_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
  | tar -xz -C /usr/local/bin krowk krowk-mcp

# From source
go install github.com/krowkcom/cli/cmd/krowk@v0.4.0

checksums.txt covers every archive on this release.

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 13 Aug 06:54

Changelog

  • 1a4c43f Teach the skill what v0.3.0 records

Install

# npm — the bare `krowk` name is blocked by npm's typosquat filter
npx @krowk/cli push screenshot.png

# Direct download — no runtime, no package manager
curl -sSfL https://github.com/krowkcom/cli/releases/download/v0.3.1/krowk_0.3.1_$(uname -s | tr A-Z a-z)_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz \
  | tar -xz -C /usr/local/bin krowk krowk-mcp

# From source
go install github.com/krowkcom/cli/cmd/krowk@v0.3.1

checksums.txt covers every archive on this release.

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 13 Aug 06:31

Changelog

  • d2cb06a Merge origin/main: the vocabulary rides the new command surface
  • 3dd7586 Read credentials through the injected env, so tests can look away
  • e1f9ab7 Write the canon metadata vocabulary, and stamp every artifact
  • 3dbb112 Fix what the review of the workspace feature confirmed
  • 45ee1a5 Show the workspace's title wherever a person chooses one
  • 20bc4a7 Ask which workspace was meant, when there is a person to ask
  • bd37497 Let a repository say which workspace its uploads belong to
  • 0bd0fc4 Rewrite the README for the people it is actually for
  • 84e535c Tell an agent what the browser login really does today
  • eb554b0 Keep the key the registry already handed over, and let CI say who is watching
  • d0e83fa Refuse a login nothing can approve, and stop arguing with a rate limit
  • 40d219f Drop the open questions; they are answered or they are canon's
  • 8d3d96b Record the exit code a refused login page earns
  • d75b682 Write down the one stream that carries two documents
  • 4441c46 Blame the registry only for a question that never got out
  • 93995c7 Cover the two branches nothing was exercising, and one more unheld read
  • d25d4eb Answer for the login it can actually see, on both streams
  • 785097f Read the approval page's record while it is still held
  • aeba1bb Write down the two calls, and say which way in works today
  • 562947d Let a browser mint the key, so a container can log in
  • 4eb664f Say what canon says: references, and slugs a DNS label accepts
  • 5de36d0 Point the link at the card, not at the bytes
  • 512ebad Match the registry's renamed key association
  • a8261c0 Let a re-run of the release finish the release it started
  • bf36744 Ship the npm wrapper under a name npm will accept
  • edc34ce Say artifact for the thing the skill is teaching an agent about
  • e2af277 Hold the installer's platform table to the one that builds the release
  • 3bf4457 Install the release that was already built, rather than building it again
  • cca14e6 Read the command path only as far as the commands go
  • 7dad8eb Keep curl's reason, and curl's exit status, where the failure is reported
  • 83e07a8 Find the SHA-256 tool before there is anything to check
  • 1a607e2 Ask PATH whether the directory is on PATH
  • 1f4c053 Install krowk with one command, and teach an agent to use it
  • 01c733b Read the help the way a person does before checking it
  • 9a269f1 Make every breadcrumb a command that runs where it is read
  • ec35912 Hold a flag's type to the flag set, not to itself
  • c053db2 Stop the catalog being its own evidence
  • d8ce25b Answer what krowk can do in a shape a program can read
  • e13e42c Hand back the next command, arguments and all
  • 0603294 Say which kind of failure it was in the exit code
  • 35fb8e6 Say how a release is cut, and what a human still owes it
  • 472aca4 Cut the release from the tag, and skip npm out loud when it cannot
  • 7c0773e Turn a tag into binaries for five platforms
  • c39b79d Reach npm through the npm registry and nothing else
  • 58fc227 Ask for another upload URL rather than another slug
  • a00de03 Speak the registry's two 404s, and its unreadable body
  • 1d32a06 Name the retry with an Idempotency-Key
  • 583ed08 Tell a person the same thing the JSON does
  • 507289b Hold the run reads to what they claim
  • 8b38636 Check the workspace on a run's artifacts too
  • fd0586d Read runs back
  • 1542095 Pin the order the claim retry depends on
  • 9730bc2 Keep a slug inside its own path segment
  • 4bbb910 Answer 404 for a claim on what was taken down
  • 0aa0288 Take an artifact down from the CLI
  • ce0e051 Require the checksum header the presign hands over
  • d29e857 Wire canon in
  • 061b1de Drop the run slug the MCP withClaimed no longer reads
  • 4f49537 Stop the retry advice contradicting itself about the run
  • dcf05a2 MCP: name a retry the agent can actually make
  • ef8b64b Match the registry that shipped: keyless attach is a 401, not run_needs_key
  • 7149cc7 Address review round 5: human and JSON agree on which run an upload joined
  • 659ca4b Address review round 4: a caller-supplied run reaches the summary too
  • 274a1ab Address review round 3: say that attaching moves an artifact between runs
  • 83f0c45 Address review round 2: the run reaches the summary, not only the human line
  • ab9e1b2 Address review round 1: reflow the prose, pin the finished-run decision
  • 6b81953 Document attaching an upload to a run
  • 85f390c MCP: the agent claiming an upload is the one that knows its run
  • ae36634 krowk uploads attach, and claim --run for the upload that has neither
  • 3f381d0 Let an upload join a run after the fact: PUT /artifacts/:slug/run
  • d9118a6 Match the house signature: authLogin reads f.token and f.quiet
  • 5b8b43a Let auth login answer in JSON, like every other command
  • 199e198 Give the CLI tests a config directory of their own
  • 8554a5e Ask the registry who a key is before storing it, and remember the answer
  • ac5472c Read the key as a resource: GET /v1/key, and no more scopes
  • cb92f20 Say that --session is an override, not a required id
  • d025b6b Merge origin/main: the detected session and commit link ride along
  • ca616e8 The self-check must not prescribe itself
  • 9789e70 Address review round 5: point a rejected key at the self-check, pin the quiet properties
  • 177ee99 Merge origin/main: the real protocol wins, the stack's features ride along
  • bfa938b Merge origin/main into feature/phase1-7-security-hardening
  • 4b74fad Merge origin/main into feature/phase1-6-dev-registry
  • 613511d Merge origin/main into feature/phase1-5-mcp-server
  • 4eddcba Merge origin/main into feature/phase1-4-anonymous-claim
  • c32c5d9 Merge origin/main into feature/phase1-3-key-verification
  • 1cee9fd Fold newlines out of link labels
  • 959dd55 Only claim an image where one renders
  • 121dec5 Escape link labels so titles can't break the embed
  • 714a63a Print both paste forms and say which is which
  • 802df62 Port 0 is a request the banner can now honour
  • b4bc6a2 Merge remote-tracking branch 'origin/feature/phase1-6-dev-registry' into feature/phase1-7-security-hardening
  • fec8255 One origin however its default port is spelled
  • 0b175d0 Merge feature/phase1-6-dev-registry: bind-before-banner meets addr validation
  • 6cf8f12 The comment says where it actually listens
  • a44a8cd One judgement of the API's own origin, and --dev advice that connects
  • 03bf633 Serve on loopback, prove --site reaches the handler, prune the tree
  • 8a117f0 Align the upload leg with the dial, and spell ports the way they bind
  • b07a22c The upgrade hop the redirect permits must also be dialable
  • a5067cd Re-review fixes: judge the dial after resolution, again
  • ea4fc47 A Request without a method is no Request either
  • df6eb66...
Read more