Skip to content

v0.30.0

Latest

Choose a tag to compare

@github-actions github-actions released this 05 Nov 15:31
· 1 commit to main since this release
ca725a8

Install: npm i -g @stroq/cli@0.30.0, or npx @stroq/cli@latest init. Every change, with the reasons, is in the changelog.

Added

  • npx @stroq/cli shows what your agents did, as a card.
  • Hoo, an orange pixel owl, stands beside the card.
  • A task slipped into data for the agent is caught.

Changed

  • The console is five screens: Check, Live, Agents, Rules and Skills & MCP, and a theme switch.

  • Check (/) is the card of stroq, made by the same code. The console's engine runs stroq card --json over your sessions (same cache, same stroq show file), and the sentences come from the CLI's own cardView, which renderCard now prints from, so the numbers and words are the terminal's. Hoo is drawn from the terminal's sprites (pnpm owl:svg writes console/public/hoo/*.svg; --check fails when they differ). A moment opens in place with the evidence stroq show N prints. Under it: one line for each agent, the fix line npx @stroq/cli init, the settings-check strip, and the older installation, rule-file and scenario checks as "Setup checks". "Run protection check" became Check again; the keys and autorun rows are /#keys and /#autorun. - Live is the old Live, Activity, event page, Sessions, Overview and the evidence of Investigations: counts on top, the filters all / denied / asked / flagged with a session, a day and a search (all in the address), and a row that opens into its chain (what the agent read, what it did, the decision, the rule) with the recorded evidence, the comparison with the current policy and stroq why / stroq untaint to copy. The filter says Denied, not Stopped: the journal records the decision, not what the host then did. - Agents shows when Stroq was last asked and the last test of the hook in each agent's row, and which of that agent's settings weaken it (the settings check, now at /agents/#settings).

  • stroq --help shows five commands.

  • stroq bench, stroq coverage and stroq prove are developer tools of the repository now

  • Messages no longer send you to commands that are gone.

  • Fewer false flags on documentation pages.

  • A rule that matched a page as written is no longer lifted by the page's own decoded copy.

  • Two patterns that took seconds on crafted text now run in linear time.

  • Hooks start faster again, with the same decisions.

Removed

Nine commands left the CLI. Typing one prints a single line that says it was removed in 0.30 and what to use instead, and exits with code 2.

  • stroq add and stroq remove.
  • stroq run, stroq task and stroq permit.
  • stroq harden.
  • stroq prove.
  • stroq bench and stroq coverage.

Older versions of Stroq stay gated: an agent still cannot run npx @stroq/cli@<older version> add, harden apply, task or permit through a shell, because the state gate keeps every name above.

The console is five screens (Check, Live, Agents, Rules, Skills & MCP). Taken out:

  • The Codex Network, Path and Skill guards of the console
  • The Guide page, the pwn.watch threat feed and the Settings choices of the console.
  • The example data of the console.
  • The credential file filters of the console
  • The live blocking check of the console
  • The task permission pages of the console
  • The pages that became parts of the five screens, and what only they used.
  • The code behind the removed commands.

Fixed

  • The card no longer counts Stroq's own Copilot and Windsurf hooks as code that runs by itself.
  • A skill's large data file is no longer reported as a setting that runs code.
  • stroq inspect no longer reports a git worktree or submodule made on this machine as a planted repository, and reads a worktree's real config.
  • stroq inspect and the card no longer report a folder of ordinary clones for having .git folders.
  • Starship's STARSHIP_SESSION_KEY is no longer treated as a key.
  • stroq sent no longer reports a key as sent to another company by a request that did not hold it.
  • stroq sent and the card no longer trace values that look like examples or placeholders.
  • A word that is only a folder's name no longer links the home folder, an ancestor of it, or a pattern's text.
  • A heredoc written to a file is text, if the shell does not expand it and its program cannot run it.
  • Where the cut is not sure of the stage that names a folder, a folder named only by a word is MAYBE SENT at most.
  • A word that names every folder no longer names a key file.
  • A word inside quotes is not a program.
  • A word in a position that takes a string is not a folder sent, and a position that may be a path still is.
  • The call text stroq show keeps has the credentials Stroq does not hold taken out too.
  • stroq show N shows the call behind a moment about keys.
  • stroq sent and the card no longer say a command sent keys because a word of it was the name of a folder, or a filter looked like a pattern.
  • A request to this machine is never "another company".
  • stroq sent reads more spellings of a printer of the environment, and a quote inside double quotes.
  • Only the vendors' own example values are examples.
  • The card no longer reuses key results from an earlier version of the check.
  • The card names the file a text came from, also when its path is long.
  • stroq replay shows one node, not two, for a flagged read of a long path.
  • A console history read while it was being saved no longer stays broken.
  • The console's left panel is as tall as the page.
  • A python -c program that decodes data and only prints it is no longer denied as encoded execution.
  • Deleting a named folder under /tmp no longer asks.
  • A delete whose path climbs out of the project with .. now asks.