Repository navigation
v1.23.0
Highlights
probe manifestwrites theaction.ymlof an external action: the one of a release, and the one to start a new action from.- The external action websocket has a reference page.
- Probe needs Go 1.26.6 again, not 1.27.
- For library users:
actionref.Releaseandactionref.Scaffoldare new. Nothing breaks.
probe manifest
An external action's action.yml holds the URL and the SHA-256 of each executable, so it has to be rewritten for every release. Each action did this with a shell script of its own, with the name, the description, guard and params written in the script. probe manifest does it for any action, from the action.yml itself:
probe manifest v0.2.0 dist/checksums.txt > "$RUNNER_TEMP/action.yml"
cp "$RUNNER_TEMP/action.yml" action.yml- It reads
action.yml, puts the tag inruns.urland the digests of the checksums file inruns.checksums, and prints the result.name,description,guardandparamsare printed as they were read, soaction.ymlis the one place an action is described in. - The checksums file is what
sha256sumor GoReleaser writes. A line is taken when its file is the assetruns.urlnames, with a platform in place of{os}and{arch}. runs.urlmust be a release asset on GitHub,https://github.com/<owner>/<repo>/releases/download/<tag>/<asset>, with a character such as_between{os}and{arch}.- The tag is letters, digits,
.,_,+and-. - The output is always written in the same form. The comment lines
action.ymlstarts with are kept, and no other comment is. - Do not redirect the output straight to
action.yml: the shell empties it before Probe reads it.
For a new action, probe manifest init prints the action.yml to start from:
probe manifest init mozership/probe-greet > action.ymlname: greet
# What the action does, in a line.
description: ""
# guard: [read-only, allow-host]
# params: [name]
runs:
using: binary
url: https://github.com/mozership/probe-greet/releases/download/v0.0.0/probe-greet_{os}_{arch}- The action is named after the repository, without a leading
probe-, and the executable of each platform<repo>_{os}_{arch}, as GoReleaser names one it publishes unarchived. guardandparamsare commented examples to fill in, each with a comment that says what it is for (shortened above).- The tag is a placeholder and there are no checksums: the first release puts both in.
See manifest and Writing an External Action.
websocket has a reference page
mozership/probe-websocket v0.1.0 is an external action that connects to a WebSocket server, sends and receives messages in the order a step lists them, and returns those it received. It now has a reference page, in English and Japanese, and probe guide websocket prints it.
uses: github.com/mozership/probe-websocket@a159244b9ab3f5ec4c61782af1e711bce705c8a8 # v0.1.0It declares guard: [read-only, allow-host], so it runs under a guard without --allow-action. See WebSocket.
Go 1.26.6
go.mod goes back to go 1.26.6. v1.20.0 raised it to 1.27 for chromedp, which left Probe with the browser action in v1.22.0. A module that imports probe no longer needs Go 1.27 for it.
Docs
- The README and the landing page say what Probe is for, who writes a workflow and who runs it, and what Probe does for an AI coding agent.
- Understanding Probe shows the architecture diagram, drawn for the light and the dark theme.
For library users
Nothing breaks in this release. New public API in actionref:
Release(manifest, tag, checksums), whichprobe manifest <tag>prints the result of.Scaffold(repo), whichprobe manifest initprints the result of.
Changelog
- 3bed050 Add probe manifest to write the action.yml of an external action
- 786e84b Build the Features around why Probe was made and three strengths
- 89269e3 Document websocket as an external action
- 560f521 Merge pull request #358 from mozership/chore/go-1.26
- 06b01f4 Merge pull request #359 from mozership/chore/go-fix
- 8695aab Merge pull request #360 from mozership/docs/architecture-diagram
- 6a774b4 Merge pull request #361 from mozership/docs/readme-use-cases
- 72f2020 Merge pull request #362 from mozership/docs/lp-lede-agents
- 55b879c Merge pull request #363 from mozership/docs/websocket-action
- 2b8108c Merge pull request #364 from mozership/feat/manifest-command
- 45766ac Need Go 1.26.6 again, now that chromedp is gone
- 07070d0 Open the README with the three strengths, in a sentence each
- 1f3d4fd Refuse a tag or an asset name that probe manifest cannot write right
- 97bc885 Run go fix in CI, and apply what it rewrites
- 2e0c59c Say in the README how the results of a run can be read
- db742c4 Say in the README what the recent features are for
- 2cf682f Say on the landing page what Probe does for an AI coding agent
- 9ab2e89 Say who writes the workflow and who runs it
- 3cd2825 Show the architecture diagram in Understanding Probe, drawn for each theme