{"_id":"@amykit/workflow-errand","_rev":"4-b4e9511531fa5f7b27e8fd26fe6805a3","name":"@amykit/workflow-errand","dist-tags":{"latest":"0.4.0"},"versions":{"0.2.0":{"name":"@amykit/workflow-errand","version":"0.2.0","author":{"name":"Nicolas Melo"},"license":"MIT","_id":"@amykit/workflow-errand@0.2.0","maintainers":[{"name":"amykit","email":"nicolasmelo12+amykit@gmail.com"}],"homepage":"https://github.com/nicolasmelo1/amy#readme","bugs":{"url":"https://github.com/nicolasmelo1/amy/issues"},"dist":{"shasum":"94bf85879284de01deed22ed9d298ac20599135d","tarball":"https://registry.npmjs.org/@amykit/workflow-errand/-/workflow-errand-0.2.0.tgz","fileCount":50,"integrity":"sha512-q2OpNgLlDJstzyFhgutdsWJijkUmPqfSbzRdvChVQMa8Vt2pqXuEne5U4onncpQqNB9jpi4imvobw6Bg5ZgpVg==","signatures":[{"sig":"MEYCIQDxzspZsfg2QcGuVs/ZJH35BzKI4AkEfSUO3T6deld/zwIhAIujtOSiYjICYq0JH8wjAOVtmbRJbs8DO3HXHdEzyEGZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@amykit%2fworkflow-errand@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":58356},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"b7903f5c95e8154f5db6fd4df6ca2633a628812d","_npmUser":{"name":"amykit","email":"nicolasmelo12+amykit@gmail.com"},"repository":{"url":"git+https://github.com/nicolasmelo1/amy.git","type":"git","directory":"packages/workflow-errand"},"_npmVersion":"11.19.0","description":"Something said in passing becomes work: capture it, do it, say what happened.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@amykit/core":"^0.2.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/workflow-errand_0.2.0_1788658147102_0.5732593097068703","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@amykit/workflow-errand","version":"0.3.0","author":{"name":"Nicolas Melo"},"license":"MIT","_id":"@amykit/workflow-errand@0.3.0","maintainers":[{"name":"amykit","email":"nicolasmelo12+amykit@gmail.com"}],"homepage":"https://github.com/nicolasmelo1/amy#readme","bugs":{"url":"https://github.com/nicolasmelo1/amy/issues"},"dist":{"shasum":"3c9c7304c18caf837a6fcb15829d4aa90e19552e","tarball":"https://registry.npmjs.org/@amykit/workflow-errand/-/workflow-errand-0.3.0.tgz","fileCount":50,"integrity":"sha512-i77Pb9uVR+OWwP0jOHKD6IHMH4qyWSfTanGz/U8pUifD9preWl7e759BIzIhnRw9V557olc0NZKw/Ko5woBV/Q==","signatures":[{"sig":"MEUCIC8oCm15NZBKuz2aZzmlbtrPBq3oXV/mhqNPHobhBJeNAiEA6VYXcZuRIE1xYrGymBi7ezTAknWfKFNZUjEMvKGvPEo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@amykit%2fworkflow-errand@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":58356},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"a9e241e87a00d8267ad9e992c4ab8fd97bd04480","_npmUser":{"name":"amykit","email":"nicolasmelo12+amykit@gmail.com"},"repository":{"url":"git+https://github.com/nicolasmelo1/amy.git","type":"git","directory":"packages/workflow-errand"},"_npmVersion":"11.19.0","description":"Something said in passing becomes work: capture it, do it, say what happened.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@amykit/core":"^0.3.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/workflow-errand_0.3.0_1788922128538_0.21878860111318743","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@amykit/workflow-errand","version":"0.3.1","author":{"name":"Nicolas Melo"},"license":"MIT","_id":"@amykit/workflow-errand@0.3.1","maintainers":[{"name":"amykit","email":"nicolasmelo12+amykit@gmail.com"}],"homepage":"https://github.com/nicolasmelo1/amy#readme","bugs":{"url":"https://github.com/nicolasmelo1/amy/issues"},"dist":{"shasum":"d37dcee64205c6e74d0dbbfa1ffa7bd7ae29bf4d","tarball":"https://registry.npmjs.org/@amykit/workflow-errand/-/workflow-errand-0.3.1.tgz","fileCount":50,"integrity":"sha512-ltWlBi2qoroKr4vIEpeEABZ0eAsz7yiQ/24Cw8D97IYlr8Yd/ZMzlC6jmQTi3nwg5bBsaftv67J64ZZb9fUmIg==","signatures":[{"sig":"MEUCIQCW8gw8U8bbWmfk+FyibK6MuW58vO0XFhdwYTkMo5bSGQIgOMLszb2Uwg8WWwg+2ThHegljCLtssnnwR3H4m9bV4t8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@amykit%2fworkflow-errand@0.3.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":58356},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"6a4c559ad368c51e232a33c4c2221f02709ceb2f","_npmUser":{"name":"amykit","email":"nicolasmelo12+amykit@gmail.com"},"repository":{"url":"git+https://github.com/nicolasmelo1/amy.git","type":"git","directory":"packages/workflow-errand"},"_npmVersion":"11.19.0","description":"Something said in passing becomes work: capture it, do it, say what happened.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@amykit/core":"^0.3.1"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/workflow-errand_0.3.1_1788973009211_0.36154592621473336","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"_id":"@amykit/workflow-errand@0.4.0","bugs":{"url":"https://github.com/nicolasmelo1/amy/issues"},"dist":{"shasum":"b747c5c88dd1225d8528ca624258b08aebbe6e6b","tarball":"https://registry.npmjs.org/@amykit/workflow-errand/-/workflow-errand-0.4.0.tgz","fileCount":50,"integrity":"sha512-ePZyfv3bSmhm4pLnAKOicvoUjQSV6nHP6EXr3mWdl/5W4nMxA50ooRpBmiu9twsN9tCJu7v5J0YHvvu2eioVpQ==","signatures":[{"sig":"MEUCIQDipdD8f304FPF/NYchMeczMcc5upe2CsA13Bq8eQSNYwIgToQbQ0nEbxpZewnopPBXUXA/qAnjUAF8J1ndaVBAcE0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCFihsOZ50bJhlhxemHxURMBDK9WQ7OuegVgvqA4WAEEAIgJncxrPKWHDAGi3Ka3JMFfMLMnjOiNMFdOA/x2T/BEcE="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@amykit%2fworkflow-errand@0.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":60192},"main":"./dist/index.js","name":"@amykit/workflow-errand","type":"module","types":"./dist/index.d.ts","author":{"name":"Nicolas Melo"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"ac437aba051bd8e109e1eb8b3c32b0365c6b4e2e","license":"MIT","version":"0.4.0","_npmUser":{"name":"amykit","email":"nicolasmelo12+amykit@gmail.com"},"homepage":"https://github.com/nicolasmelo1/amy#readme","repository":{"url":"git+https://github.com/nicolasmelo1/amy.git","type":"git","directory":"packages/workflow-errand"},"_npmVersion":"11.19.0","description":"Something said in passing becomes work: capture it, do it, say what happened.","directories":{},"maintainers":[{"name":"amykit","email":"nicolasmelo12+amykit@gmail.com"}],"_nodeVersion":"24.20.0","dependencies":{"@amykit/core":"^0.4.0"},"publishConfig":{"access":"public","registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/workflow-errand_0.4.0_1789739891416_0.636878881947953"}}},"time":{"created":"2026-09-06T01:29:06.925Z","modified":"2026-09-18T13:58:11.861Z","0.2.0":"2026-09-06T01:29:07.234Z","0.3.0":"2026-09-09T02:48:48.769Z","0.3.1":"2026-09-09T16:56:49.343Z","0.4.0":"2026-09-18T13:58:11.512Z"},"bugs":{"url":"https://github.com/nicolasmelo1/amy/issues"},"author":{"name":"Nicolas Melo"},"license":"MIT","homepage":"https://github.com/nicolasmelo1/amy#readme","repository":{"url":"git+https://github.com/nicolasmelo1/amy.git","type":"git","directory":"packages/workflow-errand"},"description":"Something said in passing becomes work: capture it, do it, say what happened.","maintainers":[{"name":"amykit","email":"nicolasmelo12+amykit@gmail.com"}],"readme":"<!-- Generated by `npm run docs:generate` from the package itself. Do not edit by hand. -->\n\n# @amykit/workflow-errand\n\nSomething said in passing becomes work: capture it, do it, say what happened.\n\nA workflow for [amy](https://github.com/nicolasmelo1/amy): a pure `plan()` that says what\nhappens next, and a runtime that says how each step is done. The engine drives it without\nknowing what any of its states mean.\n\n## Install\n\n```sh\nnpm install -g @amykit/workflow-errand\n```\n\nThen name it in `~/.amy/config.yaml`:\n\n```yaml\nworkflows:\n  errand:\n    workflow: \"@amykit/workflow-errand\"\n```\n\n## The lifecycle\n\n| State | Kind |\n| :-- | :-- |\n| `QUEUED` | initial, waiting |\n| `WORKING` | working |\n| `PR_OPEN` | working |\n| `DONE` | terminal |\n| `DECLINED` | terminal |\n\nIt emits `announce`, `open-pull-request` and `run-errand`.\n\n## Configuration\n\n```yaml\nplugins:\n  \"@amykit/workflow-errand\":\n    baseBranch: {}\n    defaultBranch: \"main\"\n    policy: {}\n    repos: <string[]>\n```\n\n| Setting | Type | Required | Default | What it is |\n| :-- | :-- | :-- | :-- | :-- |\n| `baseBranch` | `record` | no | `{}` | where one repository's base branch is, instead of the fallback. A repository named here has its errand opened against that branch |\n| `defaultBranch` | `string` | no | `main` | the branch an errand branch is cut from, which is not always `main` |\n| `policy` | `record` | no | `{}` | maxAttempts, maxInFlight and ceilingBackoffMs. Anything left out keeps its default |\n| `repos` | `string[]` | **yes** |  | the repositories an errand may be done in. A task about anything else is handed back to whoever asked |\n\nEvery field is checked at boot against the schema this package declares. A key that is\nnot one of the above is a refusal naming the plugin and the key, not a setting that\nsilently never applied.\n\n## Where the reasoning is\n\n- [Writing a workflow](https://github.com/nicolasmelo1/amy/tree/main/docs/build/write-a-workflow.md)\n- [Reference: workflows](https://github.com/nicolasmelo1/amy/tree/main/docs/reference/workflows.md)\n- [Ports and the registry](https://github.com/nicolasmelo1/amy/tree/main/docs/concepts/ports.md)\n\n## Licence\n\nMIT\n","readmeFilename":"README.md"}