{"_id":"@dzhng/duet-agent","_rev":"20-91640fae1f6ad05924a1342dcac8e703","name":"@dzhng/duet-agent","dist-tags":{"latest":"0.1.19"},"versions":{"0.1.1":{"name":"@dzhng/duet-agent","version":"0.1.1","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.1","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"0ec2c7804d96270f32f5d5229326b1eb9e23d6fc","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.1.tgz","fileCount":107,"integrity":"sha512-SPxwDm7+zD8JUnfsrxMECvuxchqAx0Lh5ORrB02b9rb9WQ4Cb+XBWwc38cW14+qjXBwJKkCP/zYDW2gdaanUCA==","signatures":[{"sig":"MEQCIActCdNK8aBBU8dPI2prNv0TFuu8b4EctLFONpqfWSRRAiBvnN+i3Ps59UmIWQHJAyP4uAdu7IBKf+OVpKH3p62RMQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":476929},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"1af3dfb8d8f4ac1e5952209c5c1aa18e64d72350","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.1_1778063014450_0.6361535414165078","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.2":{"name":"@dzhng/duet-agent","version":"0.1.2","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.2","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"a97b1a046627ec90e5c9bb382c0887091137b3ce","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.2.tgz","fileCount":107,"integrity":"sha512-hrcUi6bEeJW5bdhnlbtNtjAXXoTlLtJu0z5i3DvmdIUUJ/BykwffBCf8YRIZg5Toa+J2n5Gou4A6Z2JVRhyrmA==","signatures":[{"sig":"MEUCIQDZzJWyV8VbQweND+9qmbb2Ug7q3g8IARXLEFHEZDhxIAIgT97+/RE5fMLPD9VdFe9LpeR2Ks9QWJI6nfOmyhv6OYU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":477631},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"61a50a22938c1fbb016520d06978d4b2c437c4c7","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.2_1778063419558_0.8344856676289745","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.3":{"name":"@dzhng/duet-agent","version":"0.1.3","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.3","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"5dd9abab8de38fcebf4f890c4bc2ef6b9727be65","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.3.tgz","fileCount":107,"integrity":"sha512-HaJymLFzLTD0psL9wvf4HBN+9DAqh+GwOr8f4xKB4LdQHd1yyZPn5dIZwaMLgVjarO50p7v4FBm/hB2zLRFVcQ==","signatures":[{"sig":"MEUCIERtpuWM1viG5vioxBB0jgjDRAAueW4c1FMaK9CEADYZAiEArJnzGW0JJTBoMV82XhY+edDaymhTQMY/cm1gXdiwLcw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":489842},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"2ca4b80a1cae062c2714afdc9a5aa962ff174a6d","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.3_1778064595024_0.9077808837031949","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.4":{"name":"@dzhng/duet-agent","version":"0.1.4","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.4","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"d2313da15045d773ea2fc557a070737105ec2ab5","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.4.tgz","fileCount":111,"integrity":"sha512-swdpYuZGJMdVg7ecMGEo9chb27IuilRzzMzsFX12kF90KV3t2yx/y/6+9KVzkmfbDU8fDiPnoDYdT4VuM/qfBQ==","signatures":[{"sig":"MEUCIQCYCl7dTNLtLx2i8n52Q6YUXNXvz4M+7j3sOyxS+wWacQIgJa5nOK2iFqTSI/t7auMFilbCObgDL4e2YvzvBGI/X6c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":494328},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"03b0c1016514538cbe599b5c263d79c9f535af4f","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.4_1778064982895_0.6141207419382273","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.5":{"name":"@dzhng/duet-agent","version":"0.1.5","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.5","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"6335ecfccb97bd58721c733610f43d68cbe4c5ee","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.5.tgz","fileCount":111,"integrity":"sha512-4K8iX50dZ0l3AcBnqyxhlt/YWgzG3HI4qM54fNfzcHaI/Vwv19RoapXRuW++WUA7RcVwnGWbX6hJf2MrWUd/5A==","signatures":[{"sig":"MEYCIQCTm+IQrCWtuJh00a5BWISx6eACA+9yzFJC200YnaEMUgIhAKn/AQpWPGeca3nSdlb0GWv4KyS9pcF9FTynSRK0wE1I","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.5","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":498142},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"a2b9da644a913d1d44e437fd1bf027bc55329a89","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.5_1778066321371_0.5709783790553111","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.6":{"name":"@dzhng/duet-agent","version":"0.1.6","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.6","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"f28f8be73443e58a4a12822c6d61d3273bb67380","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.6.tgz","fileCount":111,"integrity":"sha512-xo7C7jdpWUuJGnzMH9Q38v9XP4O8TC0SIMn5OP/YzjkCrSLvPOafQ1XgczmXZPTOgBt7ADAn8ul3BqEZuY7f9Q==","signatures":[{"sig":"MEUCIAI2Kgg8qaVqP0qaL2kejLdV7N4SHMTsOV/As+WZCIicAiEAxsQaXZeQ4+JK4fcrJL7eeNoP9WI2pY7Vbp+844BfRYE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":504635},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"1d76e50a99db76d5e9618162934cea54cd35ff42","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.6_1778067206008_0.21447878786878483","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.7":{"name":"@dzhng/duet-agent","version":"0.1.7","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.7","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"4c67e5fdfec1171f083a25c57e5bca4b58ce549f","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.7.tgz","fileCount":111,"integrity":"sha512-92XucdmFtf0PQ72YVC80OXd6SviGi32p6zYGiBjNFsXy2PlmBj2sQmLQQm2RTVjWz4E3daqwWcpvpjjNG+Y+dQ==","signatures":[{"sig":"MEUCIQCYK7Q1UTyYyC7P0uSsrQkXiBRFyhEFcCURPYHsY8xmXwIgRLyQoFvkUThbctb11clm2tgXXMkDPzvwPfZNtirgeKY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":507009},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"751b543759aa978aff8de30385c8bcaf5617f6b0","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.7_1778067886555_0.0036041860664242087","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.8":{"name":"@dzhng/duet-agent","version":"0.1.8","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.8","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"b8d69348692b7b70bb22ffeeaea4953f928c71a6","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.8.tgz","fileCount":131,"integrity":"sha512-Sj8IvwvERSZ9xOPsUSgxgxdWAeDqmWVdOiS1LeRI7T1EUzSkxHP+n6Dzixv3v2NlJNHGPnOj2QSBM9+5EvCiPQ==","signatures":[{"sig":"MEQCIGFma64yT8e/+s04n8VTvCevg/W0UAeH63ep1Gt3pqa3AiAMcDRVVaVvHSpE8lOYOa3LUF69zh/BGDahM2oSkj+aYg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.8","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":526869},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"3bb0afc945a7b5dd4d4641e72b4fcc36646d3c72","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.8_1778069497170_0.06324323720486524","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.9":{"name":"@dzhng/duet-agent","version":"0.1.9","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.9","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"6aa3c1066054dc37958dbe54857bdaeab19ca18c","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.9.tgz","fileCount":139,"integrity":"sha512-L8D02q0pQJ8fY1pi0xXyEQzz/F8fC8Ysh9aLK/k+2KKC06iDay7vsZve5Hulkh3vlC9lv4+30OFLR4KGdKpfTw==","signatures":[{"sig":"MEUCIQCVVFpwDDMyNbNzWWcx6l4HzKk8Dt1QCOLmcbImrNHYNgIgaCA82JZTq4gXhHWuAV0IRa6dmX4W1YItXYkOJ1ACu40=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.9","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":552368},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"dc88121c68d781c53cbb7662695ee492671743ee","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.9_1778072838648_0.388350089194726","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.10":{"name":"@dzhng/duet-agent","version":"0.1.10","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.10","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"b38a97c37caf088d6ed1e4dba7af65339ca1f195","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.10.tgz","fileCount":139,"integrity":"sha512-+Z+uRjLUbEE/0eTuNVzt3pppREb+G4Ubm1bvDZBrw/2QZCLtUSx247D52o+6aQsVolTr0jPk9DDaNxsB7ubSVg==","signatures":[{"sig":"MEYCIQC2VKXBBVwlq+kpcPWQrBNhmeCZIUgPKqSpy1wCbhQKdgIhAPaRQlXHbaVAdgDdfQCuc2GSElD2QzHQRLbJi6eUuPkZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.10","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":553199},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"c4eb44cee4356f99d784475de2720e6fca686bc6","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.10_1778073185154_0.8615575863487863","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.11":{"name":"@dzhng/duet-agent","version":"0.1.11","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.11","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"a98f0eec982741b0a536fef91a8bd9e2d2536e27","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.11.tgz","fileCount":139,"integrity":"sha512-yctuRZEfgTN7PB6q+/sunEORokcJmX0Pxw3Wq2d9mM7HxX18RTKs+KL4tHsONfv3A2J19+JZHX7RurjehWtReg==","signatures":[{"sig":"MEUCIQCsE8Lw38e+VbEqFYLLFGMAiHG9k3vJyslBLCZ+4Fzk5AIgGr6HYr9Q6JQ3EeuT2z6JSQiieQD+j56/v1vzts0wwZM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.11","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":556423},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"4ba0c755fdeb73e0a13931fdef80cfe05e4c8e32","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.11_1778083439366_0.35959231183444373","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.12":{"name":"@dzhng/duet-agent","version":"0.1.12","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.12","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"37d7fedee0d7ba3cc2a8351b337a40ec974d292c","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.12.tgz","fileCount":139,"integrity":"sha512-2KUzwFrBsiU1nha8jiBI58s5MbMzDQWV5M/x53/JseT8/0YvUt1H9Mi5lw8IXgnWjtTte6rtN+3q4Kzf+0Wt9A==","signatures":[{"sig":"MEUCIEjC+BaGX+y13nX0UL/VhwB+xFB62dUmmtZ268IgH5vKAiEAtr120zzSBPJfB4MYcf3u9zq1uoCc5RdHaYxvadKUsfI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.12","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":564731},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"4faa73e705a339858bb17146946a9f6735628549","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.12_1778090195758_0.4134777037199242","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.13":{"name":"@dzhng/duet-agent","version":"0.1.13","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.13","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"cad1a458e4c031c86c5c45741d8d4ef90f3c3547","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.13.tgz","fileCount":139,"integrity":"sha512-BSOs7H1p+zNIZ+fecWZDVMvbMsb5eSrzLvL/89/iyjSqM5P7kjMvcH7Bz7AbFXXLzoGsm2wTUPtyMrZbcs7y1A==","signatures":[{"sig":"MEYCIQCy3DBGSleN3mQxT9pF9fBgGeJfkkr7XvItzpOWDze/kwIhAM++vz5p8sZxh9EVNHEQeyKgptannGKCqxsiMcUQU1BP","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.13","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":575779},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"d7779c0e1cf64e9a1b224febd0c5c0c8ef5a58f0","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.13_1778091866164_0.7795749803022394","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.14":{"name":"@dzhng/duet-agent","version":"0.1.14","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.14","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"c06fcf516eae3a05cea0204da05d12fad3bc41dc","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.14.tgz","fileCount":140,"integrity":"sha512-/CVJw6XUJ0ibiLiEKznU3PgDA21ppnVpyXEyM+80lZTm1JzosJywSBjYAccU+75dtxNxRXJSsHd8RUXIgkXh9Q==","signatures":[{"sig":"MEYCIQCeolCMh8Q6js89baUMlVSM3BZ1jvmi6SLqDI9DFGeXrAIhAKtFqirlQCjMwNVP9ekeqUJIxp3au4uL/srT4UiFBSJ2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.14","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":578732},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"2d07c9bf12e9ed917fa424c0db6b6084a8a778d7","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.14_1778093334620_0.6654664866199618","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.15":{"name":"@dzhng/duet-agent","version":"0.1.15","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.15","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"e39ffcfbaa8b8e5796033651650335e7dfd18e82","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.15.tgz","fileCount":148,"integrity":"sha512-UimENFjYprXv0VAZT5x4S/9AhGV/QAafrR/bHUVn5tU5OTyMZzt2Vkg+Og1WGTJMVa4j6wTpEdxeLPCNGRsrag==","signatures":[{"sig":"MEQCIGDFXRpW67kecrG5lsdLg6kUkbJ5ASgTqH/VsTuuHxsoAiAFx3kP1d1VYu2kSP6fPDritF2exIuP7bYzPEQ038XnPg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.15","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":588320},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"35e443367bb56f3c045143187f1cfe2047b2a48e","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.15_1778194883075_0.1648276808735205","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.16":{"name":"@dzhng/duet-agent","version":"0.1.16","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.16","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"8bec6df805be821e913a5a71c2e6ada08a73497f","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.16.tgz","fileCount":148,"integrity":"sha512-GZb1j98RsS1GiikLCJk3ZK7rx4x+j94Qmm6ZcHWE+wbynYTokmOVWjcEf5YBmG/p1t/0L+o951fPHin5/Vhqvw==","signatures":[{"sig":"MEQCID2YrYCuikKBIU3iZFt2RPXi/qpBjPe1oF4mNnOuU17cAiAS5R3Xnb3UvAoU3xc5v+lJlAsaVvoIvuj8oQuQ8YePVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.16","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":597807},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"ca406242584b4c4d0eb98a7d98bd7dcf88c5affb","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@mariozechner/pi-ai":"^0.70.6","@electric-sql/pglite":"^0.4.5","@mariozechner/pi-agent-core":"^0.70.6","@mariozechner/pi-coding-agent":"^0.70.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.16_1778196385082_0.1184871546884192","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.17":{"name":"@dzhng/duet-agent","version":"0.1.17","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.17","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"5a76fefc998e1042dc008c09dd426ba945c13c9e","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.17.tgz","fileCount":148,"integrity":"sha512-0zmFOfC4WlxE1S4S4sKs34oPFqmjVXshHfxTYHOrDJ0yp7iMLOPmf5IYQ85AjFjMCsebuizOAJ6H2QekPHXE4w==","signatures":[{"sig":"MEQCIDCMVJnQFyyDeSvn3ZZwNLXlB2thJda8N5xXU3kHVMR3AiBH7SFPWwZC0tpfZFKY8qe/FolyzZ6gmnqTXBA1uJXE/Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.17","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":604602},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"26dc876c7ebde30e03029b1f9a43d01d5723b53d","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@electric-sql/pglite":"^0.4.5","@earendil-works/pi-ai":"^0.74.0","@earendil-works/pi-agent-core":"^0.74.0","@earendil-works/pi-coding-agent":"^0.74.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.17_1778210619424_0.3694114401179016","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.18":{"name":"@dzhng/duet-agent","version":"0.1.18","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.18","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"f1299e1c950be0689cb85d61cfc7ae4c0379c99f","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.18.tgz","fileCount":148,"integrity":"sha512-AC3A1OYntimzR5ofqvjrj+LGS7JggVxsTNBW2jJBxh2pysfMQs7yXJ6HlzQzmnJt1vTVIEZsrBnQIRBh+kgQPg==","signatures":[{"sig":"MEYCIQDl4sG9snQNTE1HjxVI9LoFh4Bb/UAqOFGLJpb5tc7KngIhAOzWSBlX9zFloqcMpbYmHoajLDYkntwIRBEfCG+0+2fK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.18","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":612404},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"ee2811d2d06d84b5a048c39d05baf20fc80997ea","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@electric-sql/pglite":"^0.4.5","@earendil-works/pi-ai":"^0.74.0","@earendil-works/pi-agent-core":"^0.74.0","@earendil-works/pi-coding-agent":"^0.74.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.18_1778215076553_0.04514821337972452","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"},"0.1.19":{"name":"@dzhng/duet-agent","version":"0.1.19","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"license":"Apache-2.0","_id":"@dzhng/duet-agent@0.1.19","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"homepage":"https://github.com/dzhng/duet-agent#readme","bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"bin":{"duet":"dist/src/cli.js"},"dist":{"shasum":"073eafbd572a8a13a6de9224f5166b37c59514e1","tarball":"https://registry.npmjs.org/@dzhng/duet-agent/-/duet-agent-0.1.19.tgz","fileCount":148,"integrity":"sha512-bsTlGCJoHaMNHoZmh0DiZ0/cXrWvXjaeq2Gxx6n/6jXQzM/N+VWpcNuPutGiWTkjfjO+zQglIC0wNVoInD0w4g==","signatures":[{"sig":"MEQCIFQZETivmnfaiP9faO+iIJ9I06XJ2a0sISmIrAQXJv1gAiBsJTCeZz5eIcT4ALMuzhDQK+nKmPQ0RRofb+isMKt35Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dzhng%2fduet-agent@0.1.19","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":617924},"main":"dist/src/index.js","type":"module","types":"dist/src/index.d.ts","engines":{"node":">=20"},"exports":{".":{"types":"./dist/src/index.d.ts","import":"./dist/src/index.js"},"./package.json":"./package.json"},"gitHead":"df331246ee770bae1658d845459e0810a5243574","scripts":{"cli":"bun src/cli.ts","dev":"tsc --watch","eval":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./evals/*.eval.ts'","lint":"oxlint src/","test":"docker run --rm -v \"$PWD:/src:ro\" -w /work -e HOME=/tmp/home -e DUET_TEST_IN_DOCKER=1 oven/bun:1.3.11 sh -lc 'cp -R /src/. /work && bun install --frozen-lockfile && bun test ./test/*.test.ts'","build":"tsc","setup":"bash scripts/setup-docker.sh","format":"oxfmt --write --no-error-on-unmatched-pattern","example":"bun examples/basic.ts","prepack":"bun run build","prepare":"husky","check-types":"tsc --noEmit","format:check":"oxfmt --check --no-error-on-unmatched-pattern","build:compile":"bun build src/cli.ts --compile --outfile dist/duet","example:state-machine":"bun examples/state-machine.ts"},"_npmUser":{"name":"dzhng","email":"dzz0615@gmail.com"},"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"_npmVersion":"10.9.7","description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ajv":"^8.20.0","dedent":"^1.7.2","dotenv":"^17.4.2","nanoid":"^5.0.0","jstoxml":"^7.1.0","typebox":"^1.1.24","@opentui/core":"^0.2.2","eventemitter3":"^5.0.0","@electric-sql/pglite":"^0.4.5","@earendil-works/pi-ai":"^0.74.0","@earendil-works/pi-agent-core":"^0.74.0","@earendil-works/pi-coding-agent":"^0.74.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"bun@1.3.11","devDependencies":{"tsx":"^4.19.0","husky":"^9.1.7","oxfmt":"^0.47.0","oxlint":"^0.16.0","@types/bun":"^1.3.13","typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/duet-agent_0.1.19_1778216197529_0.08264514827640546","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Moved to @duetso/agent, please update your dependency"}},"time":{"created":"2026-05-06T10:23:34.345Z","modified":"2026-05-08T06:11:00.029Z","0.1.1":"2026-05-06T10:23:34.625Z","0.1.2":"2026-05-06T10:30:19.710Z","0.1.3":"2026-05-06T10:49:55.170Z","0.1.4":"2026-05-06T10:56:23.126Z","0.1.5":"2026-05-06T11:18:41.531Z","0.1.6":"2026-05-06T11:33:26.184Z","0.1.7":"2026-05-06T11:44:46.719Z","0.1.8":"2026-05-06T12:11:37.327Z","0.1.9":"2026-05-06T13:07:18.853Z","0.1.10":"2026-05-06T13:13:05.336Z","0.1.11":"2026-05-06T16:03:59.521Z","0.1.12":"2026-05-06T17:56:35.900Z","0.1.13":"2026-05-06T18:24:26.393Z","0.1.14":"2026-05-06T18:48:54.873Z","0.1.15":"2026-05-07T23:01:23.303Z","0.1.16":"2026-05-07T23:26:25.300Z","0.1.17":"2026-05-08T03:23:39.622Z","0.1.18":"2026-05-08T04:37:56.737Z","0.1.19":"2026-05-08T04:56:37.777Z"},"bugs":{"url":"https://github.com/dzhng/duet-agent/issues"},"license":"Apache-2.0","homepage":"https://github.com/dzhng/duet-agent#readme","keywords":["agent","ai","llm","memory","multi-agent","session-manager"],"repository":{"url":"git+https://github.com/dzhng/duet-agent.git","type":"git"},"description":"An opinionated full-stack agent turn runner with native memories, interrupts, and multi-agent orchestration","maintainers":[{"name":"dzhng","email":"dzz0615@gmail.com"}],"readme":"# duet-agent\n\nAn opinionated, full-stack agent turn runner. Native memories. Native interrupts. Multi-agent by default.\n\n**No MCP. Everything is files and CLI.**\n\n## Why another agent framework?\n\nExisting agent turn runners treat tools and memories as pluggable modules. This makes them flexible but fundamentally disconnected — memory is an afterthought.\n\nduet-agent takes the opposite approach: **memory is woven into the core architecture.** An agent without memory is stateless. Interrupts are handled by the underlying pi agent runtime, so the turn runner does not need its own interrupt bus.\n\n## Architecture\n\nThe diagram below walks through a realistic agent-routed state machine: outbound conference\noutreach. The user prompt enters the `TurnRunner`, the runner agent picks the next state based on\nprompt, history, and available state definitions, and the state machine drives the business process\nuntil it hits a terminal state. The same definition can start in the middle — for example, the\nrunner can skip straight to `wait_for_reply` if the user says “I already emailed them”.\n\n```mermaid\nstateDiagram-v2\n  direction TB\n\n  [*] --> Classify : user prompt\n  Classify --> AgentMode : one-off task\n  Classify --> Outreach : matches a state machine\n\n  AgentMode --> [*] : answer / edits\n\n  state Outreach {\n    direction TB\n    [*] --> research_prospect\n\n    research_prospect : research_prospect (agent)\\nweb + notes lookup\n    draft_email       : draft_email (agent)\\nwrite first-touch email\n    send_email        : send_email (script)\\nbash: gmail send\n    wait_for_reply    : wait_for_reply (poll)\\nevery 6h: check inbox\n    schedule_meeting  : schedule_meeting (script)\\nbash: calendly create\n    meeting_booked    : meeting_booked (terminal: completed)\n    not_interested    : not_interested (terminal: completed)\n    no_response       : no_response (terminal: cancelled)\n\n    research_prospect --> draft_email     : enough signal\n    research_prospect --> not_interested  : disqualified\n    draft_email       --> send_email\n    send_email        --> wait_for_reply\n    wait_for_reply    --> schedule_meeting : positive reply\n    wait_for_reply    --> not_interested   : declined\n    wait_for_reply    --> no_response      : 14d timeout\n    schedule_meeting  --> meeting_booked\n  }\n\n  Outreach --> [*]\n```\n\nEach state is one of the four kinds the runner understands:\n\n- **agent** states run a sub-agent with a prompt, optional system prompt, and optional skill allowlist.\n- **script** states shell out (`bash`, `curl`, CLIs) for anything with an API.\n- **poll** states wait on an external signal by running one script check per interval, or by using a timer poll for pure delays.\n- **terminal** states record a business outcome (`completed`, `cancelled`, `failed`).\n\nObservational memory, pi coding tools, and guardrails sit underneath every state transition; they\nare not states themselves.\n\n## Key Differentiators\n\n### Native Memory\n\nMemory is first-class. The default `MemoryStore` is in-memory and emits observation events; optional PGlite storage hydrates and persists durable observations outside the turn runner session.\n\nThe memory model follows observational memory: turn runner session messages are observed into durable text observations, and a reflector condenses observations when they grow too large. Observations are scoped as `session` or `resource`.\n\n### Pi Coding Tools\n\nSub-agents use the default tools from `@earendil-works/pi-coding-agent`: read, bash, edit, and write. The turn runner supplies a working directory and can restrict which skills are injected into a state-machine agent state; it does not wrap those tools in a second sandbox abstraction.\n\n### Native Interrupts\n\nInterrupt behavior comes from the underlying pi agent runtime. A user can send a message while a pi session is running, and the runtime can handle it as an interruption or as a follow-up. duet-agent does not add a second interrupt bus on top.\n\n### Multi-Agent by Default\n\nThe turn runner can delegate durable process steps into agent states. Agent states are not pre-built classes; they are state-machine states with prompts, optional system prompts, and optional skill allowlists.\n\n### Three Execution Modes\n\nThe turn runner has three top-level modes:\n\n- `agent`: handle the prompt as a normal agent session. This is for one-off tasks, coding requests, reviews, research, and anything that can complete in the current session.\n- `state_machine`: route the prompt into an agent-routed state machine. This is for long-running business processes with durable state, waits, and terminal business outcomes.\n- `auto`: let the turn runner classify the prompt and choose either `agent` or `state_machine`.\n\nNormal agent mode handles immediate work; state-machine mode handles business processes that may pause, resume, wait on external systems, or start in the middle based on the user's prompt. In `auto`, the runner classifies the prompt and routes to whichever fits.\n\n### Agent-Routed State Machines\n\nduet-agent is exploring long-running agent-routed state machines for business processes like outbound sales, conference outreach, and development loops. The design goal is **not** to become a workflow engine like Temporal, Airflow, or GitHub Actions.\n\nInstead, state machines are agent-routed. A state-machine definition describes the available business states: agent states, shell-script states, poll states, and terminal states. The runner keeps the state-machine system prompt cache-friendly by including only stable routing instructions plus the original prompt and available state definitions. Current state and history stay in the parent agent conversation, where state transitions, script results, poll results, and user follow-ups are already recorded.\n\nThe state machine is higher level than task execution. It tracks one current business state at a time. If a state needs fan-out, parallelism, or a task-level workflow, that belongs inside an agent or script state. The agent can execute a complex workflow internally; the state machine only records the business transition before and after that state.\n\nThis keeps state machines flexible enough to start in the middle. For example, a user can say: \"prospect person X, I've already sent email, just wait for response.\" The same outreach state machine can skip research and email sending, then choose the wait-for-response state because the runner agent understands the existing context.\n\nExternal integrations stay simple: anything with an API or CLI is a script state or script poll. Timer polls cover pure delays such as \"wait before retry.\" Email, GitHub, Calendly, CRM systems, and webhooks do not need first-class engine concepts. If the state machine can tolerate a few minutes of polling delay, a bash script is enough.\n\nWhat this is not:\n\n- Not a deterministic DAG scheduler.\n- Not a low-level durable execution runtime.\n- Not a workflow service with queues, workers, locks, and retries as the main abstraction.\n- Not a replacement for infrastructure workflow engines when exact-once execution or strict SLAs matter.\n\nThe turn runner should provide enough structure for an agent to make good process decisions, while leaving hard operational guarantees to external systems.\n\n### Optional Guardrails\n\nPattern-based (fast, regex) and semantic (LLM-evaluated) guardrails compose into a firewall. Every bash command and file write can be checked before execution.\n\n## CLI Install\n\nThe CLI runs on Bun because OpenTUI is Bun-native. Install Bun first if it is not already available:\n\n```bash\ncurl -fsSL https://bun.sh/install | bash\n```\n\nInstall the CLI globally to make the `duet` command available on your PATH:\n\n```bash\nbun add --global @dzhng/duet-agent\n```\n\nYou can also install it globally with another package manager:\n\n```bash\nnpm install --global @dzhng/duet-agent\npnpm add --global @dzhng/duet-agent\nyarn global add @dzhng/duet-agent\n```\n\nUpgrade an existing global installation:\n\n```bash\nduet upgrade\n```\n\n## SDK Install\n\nInstall the package as a dependency when you want to use the turn runner from TypeScript or JavaScript:\n\n```bash\nnpm install @dzhng/duet-agent\n```\n\n## Development\n\nThis repo uses Bun for package management, Husky for pre-commit checks, and Docker for functional tests.\n\n```bash\nbun install\nbun run setup  # install/start Docker on macOS or Linux if needed\nbun run check-types\nbun run lint\nbun run eval   # runs live evals inside Docker\nbun run test   # runs the test suite inside Docker\n```\n\nUse `bun run test` and `bun run eval`, not raw `bun test`, as the source of truth. File-writing tests and evals run in Docker so focused host runs cannot create `.duet`, PGlite databases, or home-directory skill fixtures in the checkout.\n\nThe pre-commit hook runs `format`, `check-types`, and `lint`.\n\n## CLI Quick Start\n\nSet a provider API key in the environment or in `<workdir>/.env`, then run `duet` from any project directory. When `--model` is omitted, the CLI infers a default from the configured provider: Anthropic, AI Gateway, and OpenRouter use Opus 4.7; OpenAI uses GPT-5.5.\n\n```bash\nexport ANTHROPIC_API_KEY=sk-...\n\n# Start a session\nduet \"build a REST API with Express\"\n\n# Open an interactive session without an initial prompt\nduet\n\n# With options\nduet -m anthropic:claude-opus-4-7 --workdir ./my-project \"refactor the auth module\"\n\n# With a custom observational memory model\nduet --memory-model anthropic:claude-sonnet-4-6 \"summarize this repo\"\n\n# With additional system instructions\nduet --system-prompt \"Prefer concise answers.\" \"review this repo\"\n\n# Override the default AGENTS.md system prompt file\nduet --system-prompt-file TEAM.md \"review this repo\"\n\n# Disable system prompt file loading\nduet --no-system-prompt-files \"review this repo\"\n\n# Resume a saved session\nduet --resume session_abc123 --workdir ./my-project\n\n# Through Vercel AI Gateway\nexport AI_GATEWAY_API_KEY=...\nduet -m vercel-ai-gateway:anthropic/claude-opus-4.7 \"review this repo\"\n```\n\nFor local development from a checkout, use the package script:\n\n```bash\nbun run cli -- \"build a REST API with Express\"\n```\n\n## SDK Quick Start\n\n```typescript\nimport { TurnRunner } from \"@dzhng/duet-agent\";\n\nconst turnRunner = new TurnRunner({\n  model: \"anthropic:claude-opus-4-7\",\n  cwd: process.cwd(),\n  mode: \"auto\",\n});\n\nconst terminal = await turnRunner.turn({\n  type: \"start\",\n  prompt: \"Build a todo app with React and TypeScript\",\n});\n```\n\n`TurnRunner.turn()` is the concurrency boundary. Callers may call it repeatedly\nwhile work is active; the runner folds active `prompt` and `answer` commands\nback into the active pi agent as `steer` or `follow_up`, queues wakes and other\nwork it cannot absorb immediately, and emits one terminal event when the whole\nactive work chain is done. The parent runner transcript stays linear: state\nmachine continuations, script results, poll results, and user follow-ups rejoin\nthe parent agent rather than creating separate conversation branches.\n\n## Memory And Persistence\n\nduet-agent owns a concrete event-emitting `MemoryStore` internally. It is the runtime state container, not a database adapter.\n\n`SessionManager` stores session snapshots under `~/.duet/sessions` by default and enables durable observational memory at `~/.duet/memory.db`. Pass `memoryDbPath: false` to keep observational memory in process only, or provide `memoryDbPath` for a custom database location.\n\n```typescript\nimport { SessionManager } from \"@dzhng/duet-agent\";\n\nconst manager = new SessionManager({\n  model: \"anthropic:claude-opus-4-7\",\n});\n```\n\nThe memory module hydrates durable observations from an embedded Postgres database powered by PGlite before the first turn and writes observation updates back as memory changes. Raw conversation messages stay in `TurnState.agent.messages`; memory persistence stores only derived observations/reflections.\n\nYou can also resume directly from saved state:\n\n```typescript\nconst terminal = await turnRunner.turn({\n  type: \"prompt\",\n  state: savedState,\n  message: \"Continue the previous goal\",\n  behavior: \"follow_up\",\n});\n```\n\nResume continues turn runner session state, not an in-flight model/tool call. Any `in_progress` todo is retried from `pending`.\n\nObservational memory is enabled by default with thresholds tuned for modern 200k-token model windows:\n\n- Raw messages are observed around `150_000` tokens so exact transcript context and prompt caching are used before compaction.\n- Observation logs are reflected around `90_000` tokens, targeting about `65_000` tokens after reflection.\n- Raw-tail retention keeps about `40_000` exact message tokens after observation activation.\n- Observation context is injected as reminder messages; replacing raw context with observations/reflections is the compaction path.\n\n## Skills\n\nSkills are loaded from `<cwd>/.duet/skills`, `<cwd>/.agents/skills`, `~/.duet/skills`, and `~/.agents/skills` by default, using `@earendil-works/pi-coding-agent`'s skill loader. The turn runner injects every loaded skill's description and instructions into the agent system prompt. `getSkills()` returns the discovered skills, including YAML frontmatter descriptions such as block scalars.\n\n## Guardrails\n\nThe turn runner installs its default safety checks internally. Add extra guardrail config objects when a deployment needs stricter local policy.\n\n```typescript\nconst turnRunner = new TurnRunner({\n  // ...\n  guardrails: [\n    {\n      kind: \"pattern\",\n      rules: [\n        { pattern: /production-db/i, action: \"warn\", reason: \"Production database mentioned\" },\n      ],\n    },\n    {\n      kind: \"semantic\",\n      model: getModel(\"anthropic\", \"claude-haiku-4-5\"),\n      policy: \"Never delete production data. Never expose secrets in output.\",\n    },\n  ],\n});\n```\n\n## Design Principles\n\n1. **Files and CLI over protocols.** No MCP, no custom APIs. If you can't do it with bash, you can't do it.\n2. **Runtime state over persistence.** The turn runner owns in-memory state and emits events. Persistence lives in external modules or initial-state hydration.\n3. **Agent-routed state machines over workflow engines.** Long-running state machines describe available business states; a runner agent decides what to do next from prompt, state, and history. Task-level workflows belong inside agent or script states.\n4. **Dynamic over static.** Agent states are defined by state machines at runtime, not pre-built classes.\n5. **Simple over flexible.** Default pi coding tools. One default memory store. Constraints breed creativity.\n\n## License\n\nApache-2.0\n","readmeFilename":"README.md"}