{"_id":"@dmfaster/cli","_rev":"12-68af2bf008127d8aa06c1ce46de571b7","name":"@dmfaster/cli","dist-tags":{"latest":"1.7.0"},"versions":{"0.1.0":{"name":"@dmfaster/cli","version":"0.1.0","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@0.1.0","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/eemelidevii/dmfaster-agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"985e2e5fc7b1878e8dd9d07cc62fbec22daa9807","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-0.1.0.tgz","fileCount":19,"integrity":"sha512-PV5AIxKRdKuUXB6HxO6sU27A3RDJTIH07ILFveD9jrJNLcPO7WDBTuyhHnA86G9LLQygXOeVvQvUaypXJrOzJA==","signatures":[{"sig":"MEUCIDW4/cNx7rS98Wty+x5Xwzx9VnbC5X4SBuRPIEcLpc6vAiEAk936rVAc8kTpoAF1itAXhQTN35ycXOtelplH+MJ1784=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":53046},"type":"module","_from":"file:/tmp/dmfaster-agent-release-HQiCIE/dmfaster-cli-0.1.0.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"dmfaster","email":"npm@dmfaster.com"},"_resolved":"/tmp/dmfaster-agent-release-HQiCIE/dmfaster-cli-0.1.0.tgz","_integrity":"sha512-PV5AIxKRdKuUXB6HxO6sU27A3RDJTIH07ILFveD9jrJNLcPO7WDBTuyhHnA86G9LLQygXOeVvQvUaypXJrOzJA==","repository":{"url":"git+https://github.com/eemelidevii/dmfaster-agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Read-only command-line interface for DM Faster.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@dmfaster/sdk":"0.1.0","@dmfaster/local-auth":"0.1.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.3","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.0_1785353341015_0.5373695317241214","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@dmfaster/cli","version":"0.1.1","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@0.1.1","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/eemelidevii/dmfaster-agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"083352224249816a92329b346f58f59876694437","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-0.1.1.tgz","fileCount":19,"integrity":"sha512-ZHqusVbHsZZHmNfrmUX0hyQbzsYPa5pWtBVXCfGyYzr8f2JV340Sm4G9n7g9t+XpfhXZfRZA2Yq+TE7WimJHgg==","signatures":[{"sig":"MEUCIQDxSfIqfI01pPNJwB1C4PZUtLzAxk7+0NhteOB9yMpb/AIgZnd9syJnuthJnuzt4DPaIcykwBJ0TBb4xpHdzJQhFWg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":52989},"type":"module","_from":"file:/tmp/dmfaster-agent-release-SsiAxv/dmfaster-cli-0.1.1.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7294f21d-715e-4493-babe-5bde03e846ce"}},"_resolved":"/tmp/dmfaster-agent-release-SsiAxv/dmfaster-cli-0.1.1.tgz","_integrity":"sha512-ZHqusVbHsZZHmNfrmUX0hyQbzsYPa5pWtBVXCfGyYzr8f2JV340Sm4G9n7g9t+XpfhXZfRZA2Yq+TE7WimJHgg==","repository":{"url":"git+https://github.com/eemelidevii/dmfaster-agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Read-only command-line interface for DM Faster.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@dmfaster/sdk":"0.1.1","@dmfaster/local-auth":"0.1.1"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.3","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_0.1.1_1785508307840_0.5642256968014632","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@dmfaster/cli","version":"1.0.0","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@1.0.0","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/eemelidevii/dmfaster-agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"a2f3de85711ec2471652da3f1a08c4dbec8a1572","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.0.0.tgz","fileCount":19,"integrity":"sha512-7crXON6Isys43ISLA+DHxsfdL6xtlf2MXcRobmlD7Gg2Oir5JpQxQR3Hesjb50rxQxGxGJNGubjUuR+41x18hA==","signatures":[{"sig":"MEQCIDuGHjqHzcnf4Ws2/G084vLN4hXfeI0Vk68if2mOP2uHAiAOpAmUzSCgzwkhXlKWfUWcLa0odseRq3vXQpOCdcgebA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":83261},"type":"module","_from":"file:/tmp/dmfaster-agent-release-Q9zMCq/dmfaster-cli-1.0.0.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:7294f21d-715e-4493-babe-5bde03e846ce"}},"_resolved":"/tmp/dmfaster-agent-release-Q9zMCq/dmfaster-cli-1.0.0.tgz","_integrity":"sha512-7crXON6Isys43ISLA+DHxsfdL6xtlf2MXcRobmlD7Gg2Oir5JpQxQR3Hesjb50rxQxGxGJNGubjUuR+41x18hA==","repository":{"url":"git+https://github.com/eemelidevii/dmfaster-agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@dmfaster/sdk":"1.0.0","@dmfaster/local-auth":"1.0.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.3","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.0.0_1785695429101_0.5340461773982137","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@dmfaster/cli","version":"1.0.1","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@1.0.1","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/dmfaster/agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"237a710a4fbe0ab0f412f1291f26160846b49750","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.0.1.tgz","fileCount":19,"integrity":"sha512-RvWaHSkka8iKiTLEhH2yFUm2zcdcPkpEm34hHlUqn/QHMmOH2pU4mR7NJ3ObvW//NnQ8/zggdg+scYxX0RTu0Q==","signatures":[{"sig":"MEUCIQCjnY1kWjG5ZWaq0kj458214d42jtdqvOHi+c8Ka5bv3gIgM7/bsoaR6wZgFBW3dGZf+OHSr/4V12au5IhxWyOgepM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":93192},"type":"module","_from":"file:/tmp/dmfaster-agent-release-v1TT2Z/dmfaster-cli-1.0.1.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:23f7d3ce-cd7e-4626-9658-5f0978915860"}},"_resolved":"/tmp/dmfaster-agent-release-v1TT2Z/dmfaster-cli-1.0.1.tgz","_integrity":"sha512-RvWaHSkka8iKiTLEhH2yFUm2zcdcPkpEm34hHlUqn/QHMmOH2pU4mR7NJ3ObvW//NnQ8/zggdg+scYxX0RTu0Q==","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@dmfaster/sdk":"1.0.1","@dmfaster/local-auth":"1.0.1"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.3","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.0.1_1788772972051_0.8603890797695779","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@dmfaster/cli","version":"1.0.2","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@1.0.2","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/dmfaster/agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"b792891d2e2f51844e57b3cc9e42fed7a2711a16","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.0.2.tgz","fileCount":23,"integrity":"sha512-JN4yEYSKPjjgpjw3Xd3vvA7uORXx/ByM7TKpynWffGKD4TZjZZ9LL2vAFZHHqxIRGW1R9Wp+MADWTpBP+LdFQg==","signatures":[{"sig":"MEUCIGdLFUikxijkjmtY+yAV3LXxCnNuLROP+z/mBvkZCrQxAiEA1fbjZXExxEg8yeuT2DofDpuq1dTpZHFmxshwzTZCL0Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":101526},"type":"module","_from":"file:/tmp/dmfaster-agent-release-jQL6TK/dmfaster-cli-1.0.2.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:23f7d3ce-cd7e-4626-9658-5f0978915860"}},"_resolved":"/tmp/dmfaster-agent-release-jQL6TK/dmfaster-cli-1.0.2.tgz","_integrity":"sha512-JN4yEYSKPjjgpjw3Xd3vvA7uORXx/ByM7TKpynWffGKD4TZjZZ9LL2vAFZHHqxIRGW1R9Wp+MADWTpBP+LdFQg==","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@dmfaster/sdk":"1.0.2","@dmfaster/local-auth":"1.0.2"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.3","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.0.2_1788815192953_0.8239542670124924","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@dmfaster/cli","version":"1.1.0","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@1.1.0","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/dmfaster/agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"a2ae09f4155e3b3c2bfa105730b74c329d07b320","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.1.0.tgz","fileCount":27,"integrity":"sha512-ykDEjs9aEbn7kFA44IkcbPAPsEsZGS4V3Og+DRrkhzM+If5WV6EsQdekXd2djM6DSeH3DMhN9xrhoqHs7/sylg==","signatures":[{"sig":"MEYCIQDXHVFSpid3oLsrqZ8JpR4+5/RloAg1UGfYgEPZgQ+O9AIhAKXsc84PtnpNQZp749eQ2Ys0Y6nIx6xWR8S0qWUw8ud7","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":115378},"type":"module","_from":"file:/tmp/dmfaster-agent-release-9rmB2D/dmfaster-cli-1.1.0.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:23f7d3ce-cd7e-4626-9658-5f0978915860"}},"_resolved":"/tmp/dmfaster-agent-release-9rmB2D/dmfaster-cli-1.1.0.tgz","_integrity":"sha512-ykDEjs9aEbn7kFA44IkcbPAPsEsZGS4V3Og+DRrkhzM+If5WV6EsQdekXd2djM6DSeH3DMhN9xrhoqHs7/sylg==","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@dmfaster/sdk":"1.1.0","@dmfaster/local-auth":"1.1.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"7.0.2","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.1.0_1788875965384_0.8042154408903124","host":"s3://npm-registry-packages-npm-production"}},"1.2.0":{"name":"@dmfaster/cli","version":"1.2.0","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@1.2.0","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/dmfaster/agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"990c3ea102e2931ede7c5448c60c636db39c2438","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.2.0.tgz","fileCount":27,"integrity":"sha512-Gd/fRwRp4GwrIV7b3TZ6UlQpqsWl24IYlVxfx2NekkOTIXQwsDC8mdHajbkcyMIl1wqzpykHzO1N73M0IFLH2w==","signatures":[{"sig":"MEUCIGX747CP0O8RfO5IoWUiGUMBGHP68ThKt2HU5ew5jdtrAiEAqHnFB3GdVsuZEhEF0+KMokpZk5CjW7Y4UO9A38ZQT30=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":122012},"type":"module","_from":"file:/tmp/dmfaster-agent-release-Pai7Nu/dmfaster-cli-1.2.0.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:23f7d3ce-cd7e-4626-9658-5f0978915860"}},"_resolved":"/tmp/dmfaster-agent-release-Pai7Nu/dmfaster-cli-1.2.0.tgz","_integrity":"sha512-Gd/fRwRp4GwrIV7b3TZ6UlQpqsWl24IYlVxfx2NekkOTIXQwsDC8mdHajbkcyMIl1wqzpykHzO1N73M0IFLH2w==","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@dmfaster/sdk":"1.2.0","@dmfaster/local-auth":"1.2.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"7.0.2","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.2.0_1788882259372_0.9130685628066317","host":"s3://npm-registry-packages-npm-production"}},"1.3.0":{"name":"@dmfaster/cli","version":"1.3.0","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@1.3.0","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/dmfaster/agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"aa462d7df8a0291163f7c1163669c1926458d29a","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.3.0.tgz","fileCount":27,"integrity":"sha512-Pk09W05qUjLrNuxcNZJtrXLEuaBqU7jcOom4WRUcThuGeYON/DK8U+zppVk3y0lLPOENkBwlvvYAhEtjhCRZLQ==","signatures":[{"sig":"MEUCIAh4vsRR1aEOjSxbYVNx8ona6DR3nzYeGEWtCdzumsMKAiEA1n5DO726/VDxflpFsccxdjN4FDqJIcSbbXCdOWLd6wI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":122230},"type":"module","_from":"file:/tmp/dmfaster-agent-release-uzvafx/dmfaster-cli-1.3.0.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:23f7d3ce-cd7e-4626-9658-5f0978915860"}},"_resolved":"/tmp/dmfaster-agent-release-uzvafx/dmfaster-cli-1.3.0.tgz","_integrity":"sha512-Pk09W05qUjLrNuxcNZJtrXLEuaBqU7jcOom4WRUcThuGeYON/DK8U+zppVk3y0lLPOENkBwlvvYAhEtjhCRZLQ==","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@dmfaster/sdk":"1.3.0","@dmfaster/local-auth":"1.3.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"7.0.2","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.3.0_1788891718967_0.33248830105590454","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@dmfaster/cli","version":"1.4.0","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@1.4.0","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/dmfaster/agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"a76948c6a5e11874e33c93c89a2a8126b89d1664","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.4.0.tgz","fileCount":27,"integrity":"sha512-g9z89SNDqgd00lYHhrshlOb2/JvdvDjcGCXwD1Dz2JwxYZdahtfD5xCVgWmLy8S8XaZwFcLPq1yT5Yueflv+Bg==","signatures":[{"sig":"MEQCICTE8g/TzYy5oYgChi6ZYiC3bjqxeaX6gXHwLTFh4hPWAiBXFmn1CWxNY14QOdvtUsYQJrlUU9kklGAI4/P/+Vl8aQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":129175},"type":"module","_from":"file:/tmp/dmfaster-agent-release-zWn77W/dmfaster-cli-1.4.0.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:23f7d3ce-cd7e-4626-9658-5f0978915860"}},"_resolved":"/tmp/dmfaster-agent-release-zWn77W/dmfaster-cli-1.4.0.tgz","_integrity":"sha512-g9z89SNDqgd00lYHhrshlOb2/JvdvDjcGCXwD1Dz2JwxYZdahtfD5xCVgWmLy8S8XaZwFcLPq1yT5Yueflv+Bg==","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"@dmfaster/sdk":"1.4.0","@dmfaster/local-auth":"1.4.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"7.0.2","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.4.0_1788901645135_0.604477129577166","host":"s3://npm-registry-packages-npm-production"}},"1.5.0":{"name":"@dmfaster/cli","version":"1.5.0","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@1.5.0","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/dmfaster/agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"97e9cc8030dbcc970c7db26febf43ac92fcf4cd1","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.5.0.tgz","fileCount":27,"integrity":"sha512-K29QgVoTSk7OpQvchLJH3LtbuuoQVXdanRSQbFlkjdLPD9V1KnfVhAoCCHjIVkWY3gIc46Z7ypFlzQhDWai8vw==","signatures":[{"sig":"MEQCIGltpTOvmfDdgWiSpcSJTD81sxoeoW6c0WXzdlFxBTDcAiAqmEIBNgjawXQddl0TZTdiSirCOLLx9FT0Yg9iHPwXKA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIAGHFFovZQvkXsdDfxZOLqpuYc70sbLPNaPiggHamda6AiEA9QKXWb08zKyZXDbNJcNZrKNYxwsJ4vLOr6C64S66+hU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":165657},"type":"module","_from":"file:/tmp/dmfaster-agent-release-OQcUcl/dmfaster-cli-1.5.0.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:23f7d3ce-cd7e-4626-9658-5f0978915860"}},"_resolved":"/tmp/dmfaster-agent-release-OQcUcl/dmfaster-cli-1.5.0.tgz","_integrity":"sha512-K29QgVoTSk7OpQvchLJH3LtbuuoQVXdanRSQbFlkjdLPD9V1KnfVhAoCCHjIVkWY3gIc46Z7ypFlzQhDWai8vw==","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"@dmfaster/sdk":"1.5.0","@dmfaster/local-auth":"1.5.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"7.0.2","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.5.0_1790297568103_0.9886200652088959","host":"s3://npm-registry-packages-npm-production"}},"1.6.0":{"name":"@dmfaster/cli","version":"1.6.0","author":{"name":"DM Faster"},"license":"Apache-2.0","_id":"@dmfaster/cli@1.6.0","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"homepage":"https://dmfaster.com","bugs":{"url":"https://github.com/dmfaster/agents/issues"},"bin":{"dmfaster":"dist/bin.js"},"dist":{"shasum":"5194f6a57d8ac84e88462e1b28018df97fb81954","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.6.0.tgz","fileCount":27,"integrity":"sha512-fV0u9PgSeKNaE5PhSs5CRGa2BoSP6DNhS+JgcVcNu4NnHPG6qkgKzH8mBxB6yW1EBE72UrHLe7782GKyeuTlxA==","signatures":[{"sig":"MEUCIQCCxXEFG9ROt7EMC3O9KxS76PaLXZThFbtr9E4Sd2jnwgIgFAoOgqCdv/Un/u++bK//nCPuSEgTFfH2aRekofM34tE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIQDbnBJto0/M+dRMT5f8B1Nl2to0fBZSbxC6A0IGSJwPkAIgLF1DLWoyb9IZ9uo6b0jAFRb+oQACgSrJ4O8P31i4NOk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":177258},"type":"module","_from":"file:/tmp/dmfaster-agent-release-iwDOsZ/dmfaster-cli-1.6.0.tgz","engines":{"node":"24.x"},"scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:23f7d3ce-cd7e-4626-9658-5f0978915860"}},"_resolved":"/tmp/dmfaster-agent-release-iwDOsZ/dmfaster-cli-1.6.0.tgz","_integrity":"sha512-fV0u9PgSeKNaE5PhSs5CRGa2BoSP6DNhS+JgcVcNu4NnHPG6qkgKzH8mBxB6yW1EBE72UrHLe7782GKyeuTlxA==","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"_nodeVersion":"24.21.0","dependencies":{"@dmfaster/sdk":"1.6.0","@dmfaster/local-auth":"1.6.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"7.0.2","@types/node":"24.13.3"},"_npmOperationalInternal":{"tmp":"tmp/cli_1.6.0_1790346203154_0.16923795420077958","host":"s3://npm-registry-packages-npm-production"}},"1.7.0":{"_id":"@dmfaster/cli@1.7.0","bin":{"dmfaster":"dist/bin.js"},"bugs":{"url":"https://github.com/dmfaster/agents/issues"},"dist":{"shasum":"ddb7f8d86024130b1b20817f57adbcb0ad4605bb","tarball":"https://registry.npmjs.org/@dmfaster/cli/-/cli-1.7.0.tgz","fileCount":27,"integrity":"sha512-39gSj/mfqMP8I3bl0/cD6/dPHlzg3qs4fxSPs670JAF/gzudMr5wEa1nsdxlDsATsnLPuQR0VQMWBwhj0enhpQ==","signatures":[{"sig":"MEQCICW6lVW9fxAMIkNTcHgL35vtTnWoZESCU0RtWecDc/FNAiB4RSG71TSF64ZqXrMXBJNIoeIwva6Z2cFbQrfBcuDPWA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQChUv3mw2K0lmG+hiU2Y3IxwF0xCnAYQBCctB2n2HgBWwIhANodHPccd7uBWnLl4PHtcBhYG0BrMf9AfrI+d3ZObOxD"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@dmfaster%2fcli@1.7.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":177581},"name":"@dmfaster/cli","type":"module","_from":"file:/tmp/dmfaster-agent-release-quEF7r/dmfaster-cli-1.7.0.tgz","author":{"name":"DM Faster"},"engines":{"node":"24.x"},"license":"Apache-2.0","scripts":{"test":"node --test tests/*.test.ts","build":"tsc -p tsconfig.json","check":"npm run typecheck && npm test && npm run build","typecheck":"tsc -p tsconfig.json --noEmit"},"version":"1.7.0","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:23f7d3ce-cd7e-4626-9658-5f0978915860"}},"homepage":"https://dmfaster.com","_resolved":"/tmp/dmfaster-agent-release-quEF7r/dmfaster-cli-1.7.0.tgz","_integrity":"sha512-39gSj/mfqMP8I3bl0/cD6/dPHlzg3qs4fxSPs670JAF/gzudMr5wEa1nsdxlDsATsnLPuQR0VQMWBwhj0enhpQ==","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"_npmVersion":"11.11.0","description":"Command-line interface for DM Faster Agent 1.0.","directories":{},"maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"_nodeVersion":"24.21.0","dependencies":{"@dmfaster/sdk":"1.7.0","@dmfaster/local-auth":"1.7.0"},"publishConfig":{"access":"public","provenance":true},"_hasShrinkwrap":false,"devDependencies":{"typescript":"7.0.2","@types/node":"24.13.3"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/cli_1.7.0_1790518134754_0.4275098311928307"}}},"time":{"created":"2026-07-29T19:29:00.807Z","modified":"2026-09-27T14:08:55.171Z","0.1.0":"2026-07-29T19:29:01.154Z","0.1.1":"2026-07-31T14:31:47.975Z","1.0.0":"2026-08-02T18:30:29.231Z","1.0.1":"2026-09-07T09:22:52.193Z","1.0.2":"2026-09-07T21:06:33.098Z","1.1.0":"2026-09-08T13:59:25.528Z","1.2.0":"2026-09-08T15:44:19.514Z","1.3.0":"2026-09-08T18:21:59.119Z","1.4.0":"2026-09-08T21:07:25.292Z","1.5.0":"2026-09-25T00:52:48.189Z","1.6.0":"2026-09-25T14:23:23.246Z","1.7.0":"2026-09-27T14:08:54.860Z"},"bugs":{"url":"https://github.com/dmfaster/agents/issues"},"author":{"name":"DM Faster"},"license":"Apache-2.0","homepage":"https://dmfaster.com","repository":{"url":"git+https://github.com/dmfaster/agents.git","type":"git","directory":"packages/cli"},"description":"Command-line interface for DM Faster Agent 1.0.","maintainers":[{"name":"dmfaster","email":"npm@dmfaster.com"}],"readme":"# DM Faster CLI\n\nCLI for DM Faster Agent 1.0. Run the version-pinned package, then authenticate\nthrough the focused DM Faster browser approval page.\n\nThis source prepares the version-pinned 1.7.0 runtime. The published baseline\nremains 1.5.0 until the coordinated package release. These instructions include\nthe September 9, 2026 server update for saved company contact details.\n\n```bash\nnpx --yes @dmfaster/cli@1.7.0 auth login --json\nnpx --yes @dmfaster/cli@1.7.0 auth login --access plan --json\nnpx --yes @dmfaster/cli@1.7.0 auth status --json\nnpx --yes @dmfaster/cli@1.7.0 doctor --json\nnpx --yes @dmfaster/cli@1.7.0 describe companies search\n\nnpx --yes @dmfaster/cli@1.7.0 analytics summary --scope today --json\nnpx --yes @dmfaster/cli@1.7.0 workspace briefing --json\nnpx --yes @dmfaster/cli@1.7.0 campaigns list --status Running --limit 10 --json\nnpx --yes @dmfaster/cli@1.7.0 conversations list --filter unread --channel linkedin --limit 25 --json\nnpx --yes @dmfaster/cli@1.7.0 conversation inspect conversation_123 --limit 40 --json\nnpx --yes @dmfaster/cli@1.7.0 replies list campaign_123 --limit 5 --query \"Visio\" --json\nnpx --yes @dmfaster/cli@1.7.0 company timeline campaign_123 outreach_456 --json\nnpx --yes @dmfaster/cli@1.7.0 companies list refine --input reviewed-refinement.json --json\nnpx --yes @dmfaster/cli@1.7.0 companies fit start --input fit-review.json --json\nnpx --yes @dmfaster/cli@1.7.0 companies fit advance --input fit-run.json --json\nnpx --yes @dmfaster/cli@1.7.0 companies fit results --input fit-page.json --json\nnpx --yes @dmfaster/cli@1.7.0 companies fit proposal --input fit-run.json --json\nnpx --yes @dmfaster/cli@1.7.0 history export campaign_123 > campaign-history.jsonl\n\nnpx --yes @dmfaster/cli@1.7.0 campaign validate --state campaign-state.json --json\nnpx --yes @dmfaster/cli@1.7.0 audience preview --state campaign-state.json --json > audience-preview.json\n# Review the exact count and sample in audience-preview.json before continuing.\nnpx --yes @dmfaster/cli@1.7.0 campaign prepare --state campaign-state.json --reviewed-audience audience-preview.json --idempotency-key prepare-001 --json\nnpx --yes @dmfaster/cli@1.7.0 campaign launch preflight campaign_123 --idempotency-key launch-001 --json\nnpx --yes @dmfaster/cli@1.7.0 campaign launch campaign_123 --idempotency-key launch-001 --authorization-id agent_action_… --json\n\nnpx --yes @dmfaster/cli@1.7.0 auth logout --json\n```\n\n`auth login` creates a short-lived PKCE device request, prints a confirmation\ncode, opens the same request in the user's browser, and polls until the user\napproves, denies, or lets it expire. The user must compare the browser and CLI\ncodes and review the exact workspace, expiry, and permissions. The browser never\nreceives the issued credential.\n\nLogin defaults to the complete `full` profile. Use `--access` to grant only the\nneeded capability set:\n\n| Profile | Capability                                                                                                                                   |\n| ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |\n| `read`  | inspect workspace, campaigns, sending, replies, and pipeline                                                                                 |\n| `plan`  | `read` plus industry lookup, validation, and exact audience preview                                                                          |\n| `draft` | `plan` plus private list/campaign preparation and approved pause requests                                                                    |\n| `full`  | `draft` plus campaign control, inbox replies, pipeline updates, and follow-up cancellation under the owner's grant and explicit instructions |\n\nThe server still checks every exact scope, workspace membership, owner-only\nrule, and action authorization. An access profile is a credential ceiling, not\nan action approval.\n\n`campaigns list` accepts `--query`, `--channel`, and `--cursor` alongside status\nand limit. Its result includes an exact filtered total and `nextCursor`. Keep\nthe same filters on subsequent pages. If the collection changes during paging,\nrestart with no cursor; a partial set is never reported as complete.\n\n`conversations list` accepts inbox filters and a cursor as flags. The\n`conversation inspect` command takes the exact conversation ID and optional\nmessage cursor. Both also accept `--input FILE` for the complete typed input.\n\n`history export CAMPAIGN_ID` follows the confirmed-send history cursor and\nwrites JSON Lines to standard output. It checks every page before writing any\nrows, so an API or cursor failure cannot produce a partial export. It defaults\nto at most 10,000 rows; use `--max` for a smaller bound or `--cursor` to start\nfrom a saved history cursor. `history list --input FILE` remains the typed,\npage-by-page path for larger histories and MCP clients.\n\nLogin emits two newline-delimited JSON events on stdout: first\n`authorization_required`, then `authenticated` after a successful exchange.\nHuman instructions and warnings go to stderr, so scripts can parse stdout\nwithout scraping prose.\n\nUse `auth upgrade --access full` when an existing credential needs broader\npermissions. The old credential remains stored during browser approval. A denied\nor expired request keeps it; after secure storage confirms the replacement, the\nCLI revokes the old credential. If old remote revocation fails, the CLI reports\nthat separately while retaining the new working connection. The final JSON\nevent includes `priorCredentialRevoked` so scripts can tell whether cleanup\nfinished.\n\nApproved credentials are stored in macOS Keychain or Linux Secret Service\n(`secret-tool`). Unsupported credential stores fail closed and never write a\nplaintext fallback. `auth status` verifies the configured credential with the\nserver. `auth logout` revokes a stored credential before deleting it locally.\n\nCampaign state files contain the complete latest state returned or confirmed by\nthe caller. Re-send that state for every validation, audience, or preparation\ncall; the MCP/API process does not keep a hidden planning session. Preparation\ncommands create private resources and require stable idempotency keys. They also\nrequire `--reviewed-audience` with the saved, human-reviewed output from the\nmatching exact preview. The CLI echoes the server-issued audience identity from\nthat result unchanged; it never derives a signature from the state file.\n\nAgents should assume the user does not know DM Faster's fields or command names:\ntranslate the user's goal into the complete state, ask only for material missing\nfacts, and carry validation, exact preview, and private draft preparation in\norder. `dmfaster --help` includes the same quick-start sequence for CLI-only\nhosts.\n\nThe `full` connection profile includes `campaigns:control`. After the owner\ngrants it once, an explicit instruction such as “launch it” is enough. Call\npreflight, then execute immediately when it returns `ready`, using the returned\nauthorization ID and the same campaign ID and idempotency key. The authorization\nremains short-lived and bound to the exact campaign version.\n\nOlder connections keep per-action browser approval. Reconnect once with\n`dmfaster auth upgrade --access full` to enable conversational controls, or follow\nthe returned `approval_required` URL for a single action. Only the human operates\nconnection and action approval pages. If launch returns `setup_required`, show\n`setup.setupUrl` and repeat `setup.resume` after the extension reconnects.\n\n`--json` is accepted anywhere and JSON is the default for every API command.\n`dmfaster doctor` checks the Node runtime, secure-store availability, remote\nauthentication, workspace identity, granted scopes, and scope-eligible tools.\nIt prints actions to restore a broken connection without exposing the token.\nScope eligibility does not bypass workspace role, plan, or action checks.\nRun `dmfaster --help` for the complete Agent 1.0 command list, or\n`dmfaster COMMAND --help` for a focused description. `dmfaster describe COMMAND`\nreturns the exact input schema, required scopes, and effect without signing in.\nCommands that accept `--input FILE`, `--state FILE`, `--reviewed-audience FILE`,\nor `--file FILE` also accept `-` to read one input from standard input. Keep the\nreviewed audience preview as the server-issued result; standard input does not\nremove its review requirement. The production\nAPI URL defaults to `https://app.dmfaster.com`.\n\nThe CLI also reads `$XDG_CONFIG_HOME/dmfaster/config.json` (or\n`~/.config/dmfaster/config.json`):\n\n```json\n{\n  \"baseUrl\": \"https://app.dmfaster.com\"\n}\n```\n\nEnvironment variables take precedence. `DMFASTER_API_URL` overrides the base\nURL for local development or self-hosting. `DMFASTER_TOKEN` remains an explicit\ndeveloper credential override and takes precedence over the operating-system\nstore; the CLI rejects plaintext token fields in the JSON config. Never paste a\nDM Faster token into chat or MCP configuration.\n\n## Import Instagram usernames\n\nSave a reviewed username collection as a private list:\n\n```bash\ndmfaster list import --name \"Finland Coaches\" --file instagram-usernames.csv --json\n```\n\nUse a one-column CSV with an optional `username` or `instagram_username` header,\nor one username per line. UTF-8 BOM, quoted cells, and CRLF are supported. Up to\n1,000 rows and 64 KiB are accepted. Invalid rows reject the whole import. Case\nand leading @ are normalized; duplicates are reported and removed. The command\nderives a stable retry key from the name and unique usernames; supply a new\n`--idempotency-key` to intentionally create another copy.\n\nThe SDK equivalent is `client.invoke(\"list.import\", { name, usernames,\nidempotencyKey })`. It requires `campaigns:write` and owner access, and is available on all plans including Basic. A successful result contains `listId`, `name`,\n`importedCount`, `inputCount`, `duplicateCount`, `created`, and `replayed`.\nA changed payload or an edited saved list returns `idempotency_conflict`.\nThe list is selectable in the campaign builder; no campaign is created and\nnothing is sent. Import validates syntax, not live Instagram account existence.\n\n## Existing Instagram lists (1.1.0)\n\nFind a saved list, check the whole audience for an exact username, remove a\nrequested target, and prepare an unstarted campaign through the same contract:\n\n```bash\ndmfaster lists list --query \"Coaches\" --json\ndmfaster list inspect LIST_ID --username pt.j.jylha --json\ndmfaster list target remove LIST_ID --username pt.j.jylha --expected-version INSPECTED_UPDATED_AT --json\ndmfaster campaign draft prepare --input draft.json --json\n```\n\nDraft JSON contains `listId`, `expectedListUpdatedAt`, `expectedTargetCount`,\n`name`, `messageVariants` (1–4 strings), `dailyCap`, `pacingSeconds`,\n`onlyNewChats`, `skipPreviouslyMessaged`, and `idempotencyKey`. Use the version\nand exact total from the latest inspection/removal. Preparation verifies the\nsaved copy and settings and always returns a disabled `Draft`. It does not\nstart or arm sending. Reusing a key with different settings or an edited audience\nfails without changing the original campaign.\n\nSDK operation names are `lists.list`, `list.inspect`, `list.target.remove`,\n`campaign.draft.prepare`, and `campaign.draft.update`; MCP names replace dots with underscores. List\nreads require `campaigns:read`; removal requires owner `campaigns:write`;\ndraft preparation requires both scopes. No company-search entitlement is needed\nfor these Instagram lists. Existing campaign launch/pause approval is unchanged.\n\nInstagram campaigns always exclude known contacts: `onlyNewChats` and\n`skipPreviouslyMessaged` must both be `true`. Unsupported values are rejected\nbefore a draft is created.\n\nTo change an existing disabled, unstarted social campaign draft, use\n`dmfaster campaign draft update --input update.json --json`. Supply `campaignId`,\n`expectedCampaignUpdatedAt` from campaign inspection, and a nonempty `updates`\nobject containing any supported setting: social channel toggles, LinkedIn invite\nmode and note, follow-up sequences, description, `name`, `messageVariants`,\n`dailyCap` (1–60), `pacingSeconds` (12–3,600), or sending-window fields.\nOmitted settings and the audience are preserved.\nStale versions and started campaigns are rejected. After an uncertain\nresponse, inspect the campaign before retrying. No launch approval is needed to\nedit a disabled draft.\n\nAutomatic sending windows are also editable through `campaign.draft.update`:\n`instagramSendingWindowEnabled` is a boolean; `instagramSendingWindowStartMinute`\nis 0–1380; `instagramSendingWindowEndMinute` is 60–1440; and\n`instagramSendingWindowWeekdays` is a bitmask from 1–127 (Monday=1, Tuesday=2,\nthrough Sunday=64; Monday–Friday=31). The interval must span at least 60 minutes\nin the same day. Times use the workspace timezone returned by `campaign.inspect`\nin `settings`, alongside the current window, copy, pacing, and enabled state.\nSend both endpoints when changing the interval. A saved window can be toggled\non or off while the draft stays disabled; only the separate launch operation\narms the schedule. Started campaigns cannot be edited with this draft tool.\n\nInspect an ongoing campaign with `campaign delivery inspect --input FILE`.\nUpdate cap, pace, or sending hours with `campaign delivery update --input FILE`,\nincluding the inspection revision and an idempotency key. This preserves the run\nand audience. Launch and pause return an operation reference; use\n`campaign operation inspect --input FILE --wait 30` to wait up to 30 seconds for\nits receipt. Pending operations can be inspected again with the same IDs.\nBrowser acknowledgment and confirmed delivery are separate facts.\n\n## Saved company contact details\n\nCompany search supports the current Companies app filters, including\n`technologies: [\"shopify\"]` together with `metaAdsActiveOnly: true`. Discover\ncountry-specific options first, then inspect the returned company identities\nbefore preparing a private shortlist.\n\nSaved company lists preserve available real email, LinkedIn, phone, Instagram,\nand Facebook routes. Names and roles stay with the selected contact for each\nchannel; inspect the full company profile for all decision-makers. Generated\n`company.…` identities are never Instagram targets, and contactless companies\nremain research rows. Saved routes are snapshots, not verified deliverability.\nOlder lists are not automatically backfilled with contacts previously lost.\nThis server behavior was available with the published 1.4.0 CLI and MCP server;\nsaving a research list creates no campaign and sends nothing.\n","readmeFilename":"README.md"}