{"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"keywords":["iterate","cli","trpc"],"dist-tags":{"latest":"0.2.5"},"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"dominictarr.com"},"description":"some iterator functions","readme":"# iterate\n\n⚠️⚠️⚠️ Coming soon! `npx iterate` is a work-in-progress CLI for managing [iterate.com](https://iterate.com) agents ⚠️⚠️⚠️\n\nCLI for Iterate.\n\nRuns as a thin bootstrapper that:\n\n1. Resolves an `iterate/iterate` checkout.\n2. Clones/install deps when needed.\n3. Loads `apps/os/backend/trpc/root.ts` from that checkout.\n4. Exposes commands like `iterate os ...` and `iterate whoami`.\n\n## Requirements\n\n- Node `>=22`\n- `git`\n- `pnpm` or `corepack`\n\n## Quick start\n\nRun without installing globally:\n\n```bash\nnpx iterate --help\n```\n\nInitial setup (writes auth + launcher config):\n\n```bash\nnpx iterate setup \\\n  --os-base-url https://dev-yourname-os.dev.iterate.com \\\n  --daemon-base-url http://localhost:3001 \\\n  --admin-password-env-var-name SERVICE_AUTH_TOKEN \\\n  --user-email dev-yourname@iterate.com \\\n  --scope global\n```\n\nThen run commands:\n\n```bash\nnpx iterate whoami\nnpx iterate os project list\n```\n\n## Commands\n\n- `iterate setup` - configure auth + launcher defaults\n- `iterate doctor` - print resolved config/runtime info\n- `iterate install` - force clone/install for resolved checkout\n- `iterate whoami`\n- `iterate os ...`\n- `iterate daemon ...`\n\n`setup --scope global` writes auth + launcher values into `global`; `setup --scope workspace` writes them into `workspaces[process.cwd()]`.\n\n## Config file\n\nConfig path:\n\n`${XDG_CONFIG_HOME:-~/.config}/iterate/config.json`\n\nConfig shape:\n\n```json\n{\n  \"global\": {\n    \"repoPath\": \"~/.local/share/iterate/repo\",\n    \"repoRef\": \"main\",\n    \"repoUrl\": \"https://github.com/iterate/iterate.git\",\n    \"autoInstall\": true\n  },\n  \"workspaces\": {\n    \"/absolute/workspace/path\": {\n      \"osBaseUrl\": \"https://dev-yourname-os.dev.iterate.com\",\n      \"daemonBaseUrl\": \"http://localhost:3001\",\n      \"adminPasswordEnvVarName\": \"SERVICE_AUTH_TOKEN\",\n      \"userEmail\": \"dev-yourname@iterate.com\"\n    }\n  }\n}\n```\n\nMerge precedence is shallow:\n\n`global` -> `workspaces[process.cwd()]`\n\n## Repo checkout resolution\n\n`repoPath` resolution order:\n\n1. `ITERATE_REPO_DIR`\n2. `workspaces[process.cwd()].repoPath`\n3. `global.repoPath`\n4. nearest parent directory containing `.git`, `pnpm-workspace.yaml`, and `apps/os/backend/trpc/root.ts`\n5. default managed checkout path `${XDG_DATA_HOME:-~/.local/share}/iterate/repo`\n\n`repoPath` shortcuts in `setup`:\n\n- `local` - nearest local iterate checkout\n- `managed` - default managed checkout path\n\nEnvironment overrides:\n\n- `ITERATE_REPO_DIR`\n- `ITERATE_REPO_REF`\n- `ITERATE_REPO_URL`\n- `ITERATE_AUTO_INSTALL` (`1/true` or `0/false`)\n\n## Local iterate dev\n\nIf you run inside an `iterate/iterate` clone, the CLI auto-detects it. In that mode, default `autoInstall` is `false`.\n\nYou can pin explicitly:\n\n```bash\nnpx iterate setup \\\n  --os-base-url https://dev-yourname-os.dev.iterate.com \\\n  --daemon-base-url http://localhost:3001 \\\n  --admin-password-env-var-name SERVICE_AUTH_TOKEN \\\n  --user-email dev-yourname@iterate.com \\\n  --scope workspace\n```\n\n## Publishing (maintainers)\n\nFrom repo root:\n\n```bash\npnpm --filter ./packages/iterate typecheck\npnpm eslint packages/iterate/bin/iterate.js\npnpm prettier --check packages/iterate\npnpm --filter ./packages/iterate publish --access public\n```\n","repository":{"type":"git","url":"git://github.com/dominictarr/iterate.git","directory":"packages/iterate"},"users":{"fgribreau":true},"bugs":{"url":"https://github.com/dominictarr/iterate/issues"},"license":"MIT","versions":{"0.0.1":{"name":"iterate","version":"0.0.1","description":"some iterator functions","main":"index.js","directories":{"test":"test"},"dependencies":{"it-is":"~1.0.2"},"devDependencies":{},"scripts":{"test":"synct test/*.js"},"repository":{"type":"git","url":"git://github.com/dominictarr/iterate.git"},"keywords":["iterator","each","sync","map","filter"],"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"dominictarr.com"},"license":"BSD","_id":"iterate@0.0.1","dist":{"shasum":"5349b65ec4b03286819d95bddfe2096b1c5acea6","size":2432,"noattachment":false,"tarball":"http://tools.bpmhome.cn:8082/nexus/repository/npm-lc/iterate/-/iterate-0.0.1.tgz"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"publish_time":1342977913084,"_cnpm_publish_time":1342977913084,"_hasShrinkwrap":false},"0.0.2":{"name":"iterate","version":"0.0.2","description":"some iterator functions","main":"index.js","directories":{"test":"test"},"devDependencies":{},"scripts":{"test":"synct test/*.js"},"repository":{"type":"git","url":"git://github.com/dominictarr/iterate.git"},"keywords":["iterator","each","sync","map","filter"],"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"dominictarr.com"},"license":"BSD","_id":"iterate@0.0.2","dist":{"shasum":"bbed82c607b3fa06e4d10ad7ebe3bba3d123e503","size":2432,"noattachment":false,"tarball":"http://tools.bpmhome.cn:8082/nexus/repository/npm-lc/iterate/-/iterate-0.0.2.tgz"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"publish_time":1343212656295,"_cnpm_publish_time":1343212656295,"_hasShrinkwrap":false},"0.1.0":{"name":"iterate","version":"0.1.0","description":"some iterator functions","main":"index.js","directories":{"test":"test"},"devDependencies":{"it-is":"~1.0.2"},"scripts":{"test":"synct test/*.js"},"repository":{"type":"git","url":"git://github.com/dominictarr/iterate.git"},"keywords":["iterator","each","sync","map","filter"],"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"dominictarr.com"},"license":"BSD","readmeFilename":"README.markdown","_id":"iterate@0.1.0","dist":{"shasum":"577074e0cc73bb29b558cc56482bf16f316aa5f0","size":2549,"noattachment":false,"tarball":"http://tools.bpmhome.cn:8082/nexus/repository/npm-lc/iterate/-/iterate-0.1.0.tgz"},"_npmVersion":"1.1.65","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"publish_time":1354419951465,"_cnpm_publish_time":1354419951465,"_hasShrinkwrap":false},"0.1.1":{"name":"iterate","version":"0.1.1","description":"some iterator functions","main":"index.js","directories":{"test":"test"},"devDependencies":{"it-is":"~1.0.2"},"scripts":{"test":"synct test/*.js"},"repository":{"type":"git","url":"git://github.com/dominictarr/iterate.git"},"keywords":["iterator","each","sync","map","filter"],"author":{"name":"Dominic Tarr","email":"dominic.tarr@gmail.com","url":"dominictarr.com"},"license":"MIT","readmeFilename":"README.markdown","bugs":{"url":"https://github.com/dominictarr/iterate/issues"},"_id":"iterate@0.1.1","dist":{"shasum":"d6fb8243c5b7444cf0b9bb11df540a754ace7158","size":3240,"noattachment":false,"tarball":"http://tools.bpmhome.cn:8082/nexus/repository/npm-lc/iterate/-/iterate-0.1.1.tgz"},"_from":".","_npmVersion":"1.3.6","_npmUser":{"name":"dominictarr","email":"dominic.tarr@gmail.com"},"maintainers":[{"name":"nopersonsmodules","email":"nopersonsmodules@gmail.com"}],"publish_time":1379708709402,"_cnpm_publish_time":1379708709402,"_hasShrinkwrap":false},"0.2.0":{"name":"iterate","version":"0.2.0","keywords":["iterate","cli","trpc"],"license":"AGPL-3.0-only","_id":"iterate@0.2.0","maintainers":[{"name":"mmkale","email":"mmkal1@outlook.com"},{"name":"blankparticle","email":"blankparticle@gmail.com"},{"name":"jonastemplestein","email":"jonas@nustom.com"},{"name":"nicknustom","email":"nickblow@nustom.com"}],"homepage":"https://github.com/iterate/iterate#readme","bugs":{"url":"https://github.com/iterate/iterate/issues"},"bin":{"iterate":"bin/iterate.js"},"dist":{"shasum":"7b992a080a5499ffc4c34a4f3b80de4c115bcf2b","tarball":"http://tools.bpmhome.cn:8082/nexus/repository/npm-lc/iterate/-/iterate-0.2.0.tgz","fileCount":3,"integrity":"sha512-6Aag6wX05F9Ql78boumf2ZuR8ATaMNukzoGN69xyYIkKvoSkyoj1kaoYlGbFqHf2x1eeutO/j31H+ZG8R7C+rQ==","signatures":[{"sig":"MEYCIQDoKsHhkBhsJzYScnCIGYB0KfKPqIB1iecwyNpbFhHptQIhAOkwDzAkVKE/B8aY+o1N7FfangiCTnLoBz2gPJJx8Hkl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":22981},"type":"module","engines":{"node":">=22"},"gitHead":"36c26587487753dad370e7c6aee60ea1169a21fd","scripts":{"typecheck":"node --check ./bin/iterate.js"},"_npmUser":{"name":"mmkale","email":"mmkal1@outlook.com"},"repository":{"url":"git+https://github.com/iterate/iterate.git","type":"git","directory":"packages/iterate"},"_npmVersion":"11.6.0","description":"CLI for iterate","directories":{},"_nodeVersion":"24.8.0","dependencies":{"zod":"4.1.12","trpc-cli":"^0.12.2","superjson":"^2.2.2","better-auth":"1.4.3","@trpc/client":"^11.7.2","@trpc/server":"^11.7.2","@clack/prompts":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/iterate_0.2.0_1770987050749_0.22021179363141696","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"iterate","version":"0.2.2","keywords":["iterate","cli","trpc"],"license":"Apache-2.0","_id":"iterate@0.2.2","maintainers":[{"name":"mmkale","email":"mmkal1@outlook.com"},{"name":"blankparticle","email":"blankparticle@gmail.com"},{"name":"jonastemplestein","email":"jonas@nustom.com"},{"name":"nicknustom","email":"nickblow@nustom.com"}],"homepage":"https://github.com/iterate/iterate#readme","bugs":{"url":"https://github.com/iterate/iterate/issues"},"bin":{"iterate":"bin/iterate.js"},"dist":{"shasum":"99411898d10029f897f526a6a01cb45a96c0839d","tarball":"http://tools.bpmhome.cn:8082/nexus/repository/npm-lc/iterate/-/iterate-0.2.2.tgz","fileCount":3,"integrity":"sha512-bm7TPriw2neNsD5uAPUtQ37UPRERYmJGN3gCHriXwPGoj4YUMRFvSVxodwtsZYgoDwviunZja94GyLTdNiaxUQ==","signatures":[{"sig":"MEYCIQDI6qmUS7g8AL5EQjd4xJCAF7dL6do3j6zIH/9SzWnMQgIhALScejteaEOa9JjXVVoVKOI03Wr69CHE2HGyp02gX4Of","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":25015},"type":"module","engines":{"node":">=22"},"gitHead":"a0970f378c58410ad258a3f60639e5ed292132b6","scripts":{"typecheck":"node --check ./bin/iterate.js"},"_npmUser":{"name":"mmkale","email":"mmkal1@outlook.com"},"repository":{"url":"git+https://github.com/iterate/iterate.git","type":"git","directory":"packages/iterate"},"_npmVersion":"11.6.0","description":"CLI for iterate","directories":{},"_nodeVersion":"24.8.0","dependencies":{"zod":"4.1.12","trpc-cli":"^0.12.2","superjson":"^2.2.2","better-auth":"1.4.3","@trpc/client":"^11.7.2","@trpc/server":"^11.7.2","@clack/prompts":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/iterate_0.2.2_1770994330368_0.9338637322877488","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"iterate","version":"0.2.3","keywords":["iterate","cli","trpc"],"license":"Apache-2.0","_id":"iterate@0.2.3","maintainers":[{"name":"mmkale","email":"mmkal1@outlook.com"},{"name":"blankparticle","email":"blankparticle@gmail.com"},{"name":"jonastemplestein","email":"jonas@nustom.com"},{"name":"nicknustom","email":"nickblow@nustom.com"}],"homepage":"https://github.com/iterate/iterate#readme","bugs":{"url":"https://github.com/iterate/iterate/issues"},"bin":{"iterate":"bin/iterate.js"},"dist":{"shasum":"80ceaa866c94e3ea131a024b6962a1c80d4d6f6e","tarball":"http://tools.bpmhome.cn:8082/nexus/repository/npm-lc/iterate/-/iterate-0.2.3.tgz","fileCount":3,"integrity":"sha512-JeYI20YwA+7sDYT10inH5LEwOqrcM92tAtAgOwFgfJtN+HP+VdckdWwuFmlMu2URvn5dum72Pzk5TBZDSHJW3Q==","signatures":[{"sig":"MEUCIAlg1zeCAJxLutLvEVTY1/o7fCU/x6ElIEwSZN4q3h6OAiEAkZpgEuIjRcNuRwFukOQxwbC85fIOxq9OupzKZSIQnLg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23374},"type":"module","engines":{"node":">=22"},"gitHead":"44add76aab4268fd08733d8feb9738249697fc3a","scripts":{"typecheck":"node --check ./bin/iterate.js"},"_npmUser":{"name":"mmkale","email":"mmkal1@outlook.com"},"repository":{"url":"git+https://github.com/iterate/iterate.git","type":"git","directory":"packages/iterate"},"_npmVersion":"11.6.0","description":"CLI for iterate","directories":{},"_nodeVersion":"24.8.0","dependencies":{"zod":"4.1.12","trpc-cli":"0.12.4","superjson":"^2.2.2","better-auth":"1.4.3","@trpc/client":"^11.7.2","@trpc/server":"^11.7.2","@clack/prompts":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/iterate_0.2.3_1771517799947_0.2417658561972056","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"iterate","version":"0.2.4","keywords":["iterate","cli","trpc"],"license":"Apache-2.0","_id":"iterate@0.2.4","maintainers":[{"name":"mmkale","email":"mmkal1@outlook.com"},{"name":"blankparticle","email":"blankparticle@gmail.com"},{"name":"jonastemplestein","email":"jonas@nustom.com"},{"name":"nicknustom","email":"nickblow@nustom.com"}],"homepage":"https://github.com/iterate/iterate#readme","bugs":{"url":"https://github.com/iterate/iterate/issues"},"bin":{"iterate":"bin/iterate.js"},"dist":{"shasum":"bdc6365f43982602cfac63d44d929bb07bde83c3","tarball":"http://tools.bpmhome.cn:8082/nexus/repository/npm-lc/iterate/-/iterate-0.2.4.tgz","fileCount":3,"integrity":"sha512-ltC9qv6vIH+JnUMfxU0+rhV3/n1c2SzCsWXR8oVAzqqQVmkNZmoWT38jGN3QLPy5NlCDyrpxBdRZj5VtDtan7g==","signatures":[{"sig":"MEQCIHqJr0M4JDyKOktWsgBWbZk23ze8x1QRflcxNA02NNpUAiAN5MZ1Fr3dCIavD7ywMcmijVDdqFROdoP6aOtU23MRZg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":23683},"type":"module","engines":{"node":">=22"},"gitHead":"c7b02e724b368b6edaf8ef799f200f7733c9cd7f","scripts":{"typecheck":"node --check ./bin/iterate.js"},"_npmUser":{"name":"mmkale","email":"mmkal1@outlook.com"},"repository":{"url":"git+https://github.com/iterate/iterate.git","type":"git","directory":"packages/iterate"},"_npmVersion":"11.6.0","description":"CLI for iterate","directories":{},"_nodeVersion":"24.8.0","dependencies":{"zod":"4.1.12","trpc-cli":"0.12.4","superjson":"^2.2.2","better-auth":"1.4.3","@trpc/client":"^11.7.2","@trpc/server":"^11.7.2","@clack/prompts":"^1.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/iterate_0.2.4_1771518279120_0.5109401205058675","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"iterate","version":"0.2.5","description":"CLI for iterate","license":"Apache-2.0","type":"module","repository":{"type":"git","url":"git+https://github.com/iterate/iterate.git","directory":"packages/iterate"},"homepage":"https://github.com/iterate/iterate#readme","bugs":{"url":"https://github.com/iterate/iterate/issues"},"keywords":["iterate","cli","trpc"],"engines":{"node":">=22"},"bin":{"iterate":"bin/iterate.js"},"exports":{".":"./src/index.ts"},"publishConfig":{"access":"public","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}}},"scripts":{"build":"tsgo","typecheck":"tsgo --noEmit","prepack":"pnpm build"},"dependencies":{"@clack/prompts":"^1.0.0","@trpc/client":"^11.7.2","@trpc/server":"^11.7.2","better-auth":"1.4.3","superjson":"^2.2.2","trpc-cli":"0.12.4","zod":"4.1.12"},"devDependencies":{"@types/node":"^22.0.0"},"_id":"iterate@0.2.5","gitHead":"d0c226c59db2694f04303b8aab8034dd12f459ba","_nodeVersion":"24.8.0","_npmVersion":"11.6.0","dist":{"integrity":"sha512-izpgxnv26Ao8BlKAZx1Z436+YjmVJxAt/2EIlgO6jueF3h3JsxW5j205eXOykwTUFOdqd7asJNzKRkrGUlzaOw==","shasum":"ad18509eda8f6e7646fdd9be386e93d2296b930f","tarball":"http://tools.bpmhome.cn:8082/nexus/repository/npm-lc/iterate/-/iterate-0.2.5.tgz","fileCount":11,"unpackedSize":40804,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCLFdHZ4woqqSg3nCg44Nsq/gX0ynwb5GButCA1k2iCMAIhAOZBnLQZgpBcSOhtpxtCt+4hPkU9YXUkWKu4bYpWGZNt"}]},"_npmUser":{"name":"mmkale","email":"mmkal1@outlook.com"},"directories":{},"maintainers":[{"name":"mmkale","email":"mmkal1@outlook.com"},{"name":"blankparticle","email":"blankparticle@gmail.com"},{"name":"jonastemplestein","email":"jonas@nustom.com"},{"name":"nicknustom","email":"nickblow@nustom.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/iterate_0.2.5_1771595923163_0.013911995582468473"},"_hasShrinkwrap":false}},"name":"iterate","time":{"created":"2012-07-22T17:25:13.084Z","modified":"2018-10-22T01:01:32.113Z","0.0.1":"2012-07-22T17:25:13.084Z","0.0.2":"2012-07-25T10:37:36.295Z","0.1.0":"2012-12-02T03:45:51.465Z","0.1.1":"2013-09-20T20:25:09.402Z","0.2.0":"2026-02-13T12:50:50.904Z","0.2.2":"2026-02-13T14:52:10.506Z","0.2.3":"2026-02-19T16:16:40.087Z","0.2.4":"2026-02-19T16:24:39.257Z","0.2.5":"2026-02-20T13:58:43.321Z"},"readmeFilename":"README.markdown","homepage":"https://github.com/iterate/iterate#readme"}