@coreplane/switchboard 1.227.0 → 1.229.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/assets/config/config.example.yaml +7 -13
  2. package/dist/assets/deploy/cloudflare-memory/worker.ts +157 -3
  3. package/dist/assets/deploy/cloudflare-resident/worker.ts +170 -30
  4. package/dist/assets/deploy/cloudflare-sandbox/Dockerfile +22 -18
  5. package/dist/assets/deploy/cloudflare-sandbox/package.json +1 -1
  6. package/dist/assets/deploy/cloudflare-sandbox/runtime-supervisor.sh +11 -10
  7. package/dist/assets/deploy/cloudflare-sandbox/worker.ts +332 -299
  8. package/dist/assets/deploy/cloudflare-sandbox/wrangler.template.jsonc +2 -2
  9. package/dist/assets/package-lock.json +2542 -212
  10. package/dist/assets/package.json +2 -2
  11. package/dist/assets/project.json +2 -2
  12. package/dist/assets/source.json +3 -3
  13. package/dist/assets/src/agents/registry.ts +19 -34
  14. package/dist/assets/src/core/authz/policy.ts +8 -0
  15. package/dist/assets/src/core/authz/resource.ts +3 -1
  16. package/dist/assets/src/core/authz/types.ts +10 -1
  17. package/dist/assets/src/core/chatMessage.ts +1 -1
  18. package/dist/assets/src/core/coordinator/contract.ts +6 -0
  19. package/dist/assets/src/core/coordinator/driver.ts +8 -6
  20. package/dist/assets/src/core/runEvents.ts +53 -14
  21. package/dist/assets/src/core/runFriction.ts +3 -2
  22. package/dist/assets/src/core/runRecord.ts +46 -3
  23. package/dist/assets/src/core/runUsage.ts +199 -0
  24. package/dist/assets/src/core/ship/coordinator.ts +4 -2
  25. package/dist/assets/src/execution/residentDepCache.ts +34 -8
  26. package/dist/assets/src/execution/residentRebind.ts +84 -7
  27. package/dist/assets/src/execution/sandboxErrors.ts +14 -38
  28. package/dist/assets/src/execution/sandboxLifecycle.ts +78 -0
  29. package/dist/assets/web/dist/.vite/manifest.json +20 -20
  30. package/dist/assets/web/dist/assets/CostsPage-DQg30mHr.js +2 -0
  31. package/dist/assets/web/dist/assets/{ResidentDetailPage-Chvll3wy.js → ResidentDetailPage-CkVYktwT.js} +1 -1
  32. package/dist/assets/web/dist/assets/{ResidentsIndexPage-B5f8IwGF.js → ResidentsIndexPage-BLanxf27.js} +1 -1
  33. package/dist/assets/web/dist/assets/RunRoutePage-U3nwL8Df.js +13 -0
  34. package/dist/assets/web/dist/assets/{RunsIndexPage-BTJuKFTv.js → RunsIndexPage-DrIVxmpl.js} +1 -1
  35. package/dist/assets/web/dist/assets/{ScheduledPage-BVfgUBvP.js → ScheduledPage-DpqubmIm.js} +1 -1
  36. package/dist/assets/web/dist/assets/{StatusDot-CFXbAw7S.js → StatusDot-BpD9MRge.js} +1 -1
  37. package/dist/assets/web/dist/assets/{Tooltip-DcHMtbHJ.js → Tooltip-BYv0WSrA.js} +1 -1
  38. package/dist/assets/web/dist/assets/{dist-DKhqHu0V.js → dist-BZmA5qTt.js} +1 -1
  39. package/dist/assets/web/dist/assets/{main-CveRd2yk.js → main-C4GOEklV.js} +2 -2
  40. package/dist/assets/web/dist/assets/main-CAVqMbiX.css +1 -0
  41. package/dist/cli.js +9094 -9223
  42. package/package.json +1 -2
  43. package/dist/assets/src/execution/sandboxKeepalive.ts +0 -118
  44. package/dist/assets/web/dist/assets/CostsPage-5pl3HB2F.js +0 -2
  45. package/dist/assets/web/dist/assets/RunRoutePage-CRvmCuXh.js +0 -12
  46. package/dist/assets/web/dist/assets/main-xLAsdkfB.css +0 -1
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "switchboard",
3
- "version": "1.227.0",
3
+ "version": "1.229.0",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "switchboard",
9
- "version": "1.227.0",
9
+ "version": "1.229.0",
10
10
  "license": "Apache-2.0",
11
11
  "workspaces": [
12
12
  "web",
@@ -19,7 +19,6 @@
19
19
  "packages/switchboard"
20
20
  ],
21
21
  "dependencies": {
22
- "@anthropic-ai/sdk": "^0.124.0",
23
22
  "@earendil-works/pi-ai": "0.85.1",
24
23
  "@slack/bolt": "^5.1.0",
25
24
  "aws4fetch": "^1.0.20",
@@ -33,6 +32,7 @@
33
32
  "switchboard": "dist/cli.js"
34
33
  },
35
34
  "devDependencies": {
35
+ "@earendil-works/pi-coding-agent": "0.85.1",
36
36
  "@eslint/js": "^10.0.1",
37
37
  "@types/node": "^24.0.0",
38
38
  "eslint": "^10.10.0",
@@ -793,7 +793,7 @@
793
793
  "deploy/cloudflare-sandbox": {
794
794
  "name": "switchboard-sandbox-worker",
795
795
  "dependencies": {
796
- "@cloudflare/sandbox": "0.12.9"
796
+ "@cloudflare/sandbox": "0.13.0-next.751.1"
797
797
  },
798
798
  "devDependencies": {
799
799
  "@cloudflare/workers-types": "^5.20260904.1",
@@ -804,34 +804,6 @@
804
804
  "node": ">=22"
805
805
  }
806
806
  },
807
- "deploy/cloudflare-sandbox/node_modules/@cloudflare/sandbox": {
808
- "version": "0.12.9",
809
- "resolved": "https://registry.npmjs.org/@cloudflare/sandbox/-/sandbox-0.12.9.tgz",
810
- "integrity": "sha512-JlCQ8adVaHT3TrZO13X6US2LJTyQ4YvoEZpfh5EewRqcxPfMHZNJPB/1dsRdiFqmtzpz+lMxGazSUa2H/g2IKg==",
811
- "license": "Apache-2.0",
812
- "dependencies": {
813
- "@cloudflare/containers": "^0.3.5",
814
- "aws4fetch": "^1.0.20",
815
- "capnweb": "^0.8.0",
816
- "hono": "^4.13.0"
817
- },
818
- "peerDependencies": {
819
- "@openai/agents": "^0.3.3",
820
- "@opencode-ai/sdk": "^1.1.40",
821
- "@xterm/xterm": ">=5.0.0"
822
- },
823
- "peerDependenciesMeta": {
824
- "@openai/agents": {
825
- "optional": true
826
- },
827
- "@opencode-ai/sdk": {
828
- "optional": true
829
- },
830
- "@xterm/xterm": {
831
- "optional": true
832
- }
833
- }
834
- },
835
807
  "docs": {
836
808
  "name": "switchboard-docs-site",
837
809
  "devDependencies": {
@@ -1132,27 +1104,6 @@
1132
1104
  "url": "https://github.com/sponsors/antfu"
1133
1105
  }
1134
1106
  },
1135
- "node_modules/@anthropic-ai/sdk": {
1136
- "version": "0.124.0",
1137
- "resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.124.0.tgz",
1138
- "integrity": "sha512-cN5O8i9UVxHeOQAzj/XjshWXG8KiibJDw9OGpH2Z/eR3n/RBxdoLxDJOcfqAJWvjaMDFfHTBADU04hWRJVkDyA==",
1139
- "license": "MIT",
1140
- "dependencies": {
1141
- "json-schema-to-ts": "^3.1.1",
1142
- "standardwebhooks": "^1.0.0"
1143
- },
1144
- "bin": {
1145
- "anthropic-ai-sdk": "bin/cli"
1146
- },
1147
- "peerDependencies": {
1148
- "zod": "^3.25.0 || ^4.0.0"
1149
- },
1150
- "peerDependenciesMeta": {
1151
- "zod": {
1152
- "optional": true
1153
- }
1154
- }
1155
- },
1156
1107
  "node_modules/@aws-crypto/sha256-browser": {
1157
1108
  "version": "5.2.0",
1158
1109
  "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz",
@@ -1798,197 +1749,2590 @@
1798
1749
  "x64"
1799
1750
  ],
1800
1751
  "dev": true,
1801
- "license": "Apache-2.0",
1802
- "optional": true,
1803
- "os": [
1804
- "linux"
1805
- ],
1752
+ "license": "Apache-2.0",
1753
+ "optional": true,
1754
+ "os": [
1755
+ "linux"
1756
+ ],
1757
+ "engines": {
1758
+ "node": ">=16"
1759
+ }
1760
+ },
1761
+ "node_modules/@cloudflare/workerd-linux-arm64": {
1762
+ "version": "1.20260815.1",
1763
+ "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20260815.1.tgz",
1764
+ "integrity": "sha512-XNFtJ5rIqJxnY6ISjkfbhT/ODiWJ6LcBvNbntuPD6I/F2k7aZeKgPaXrvWvKde66LXyzFKzc8Hn+Ydx4shevQg==",
1765
+ "cpu": [
1766
+ "arm64"
1767
+ ],
1768
+ "dev": true,
1769
+ "license": "Apache-2.0",
1770
+ "optional": true,
1771
+ "os": [
1772
+ "linux"
1773
+ ],
1774
+ "engines": {
1775
+ "node": ">=16"
1776
+ }
1777
+ },
1778
+ "node_modules/@cloudflare/workerd-windows-64": {
1779
+ "version": "1.20260815.1",
1780
+ "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20260815.1.tgz",
1781
+ "integrity": "sha512-PiIUWrhbMg3quolwjgMvPOd75vKESjT4aDm7nL6mSjL5IOgmpO/zKstXnYfnEH3pq7sC0UCvKlF8ZPcfsh8NMw==",
1782
+ "cpu": [
1783
+ "x64"
1784
+ ],
1785
+ "dev": true,
1786
+ "license": "Apache-2.0",
1787
+ "optional": true,
1788
+ "os": [
1789
+ "win32"
1790
+ ],
1791
+ "engines": {
1792
+ "node": ">=16"
1793
+ }
1794
+ },
1795
+ "node_modules/@cloudflare/workers-types": {
1796
+ "version": "5.20260907.1",
1797
+ "resolved": "https://registry.npmjs.org/@cloudflare/workers-types/-/workers-types-5.20260907.1.tgz",
1798
+ "integrity": "sha512-HYI7eFb/MOcNzvbUW7ZwHVZL5YFXb4r6yHN3vx8gJCqde7yhn3bhuPKiQPw90UtGWWp7uOI+Que3kf8Svjn5cw==",
1799
+ "dev": true,
1800
+ "license": "MIT OR Apache-2.0"
1801
+ },
1802
+ "node_modules/@connectrpc/connect": {
1803
+ "version": "2.2.0",
1804
+ "resolved": "https://registry.npmjs.org/@connectrpc/connect/-/connect-2.2.0.tgz",
1805
+ "integrity": "sha512-M63OQ1ZFcPUm85CuewJ9G9CMV8LjzGR9935xOnXNQGSazAbwMb3x2W7vXBYM1zqrP7XFD8uxp/dUAhirclgwnQ==",
1806
+ "license": "Apache-2.0",
1807
+ "peerDependencies": {
1808
+ "@bufbuild/protobuf": "^2.7.0"
1809
+ }
1810
+ },
1811
+ "node_modules/@connectrpc/connect-web": {
1812
+ "version": "2.2.0",
1813
+ "resolved": "https://registry.npmjs.org/@connectrpc/connect-web/-/connect-web-2.2.0.tgz",
1814
+ "integrity": "sha512-uuBUcBTYfb/r1o98LzCCZk1H90yx0vmZ5m21dpw/q4EUwsKwkCDGI8H0aEdjcZld+Q2jJ5A5ADvPqfb6lzQ/sg==",
1815
+ "license": "Apache-2.0",
1816
+ "peerDependencies": {
1817
+ "@bufbuild/protobuf": "^2.7.0",
1818
+ "@connectrpc/connect": "2.2.0"
1819
+ }
1820
+ },
1821
+ "node_modules/@coreplane/switchboard": {
1822
+ "resolved": "packages/switchboard",
1823
+ "link": true
1824
+ },
1825
+ "node_modules/@cspotcode/source-map-support": {
1826
+ "version": "0.8.1",
1827
+ "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
1828
+ "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
1829
+ "dev": true,
1830
+ "license": "MIT",
1831
+ "dependencies": {
1832
+ "@jridgewell/trace-mapping": "0.3.9"
1833
+ },
1834
+ "engines": {
1835
+ "node": ">=12"
1836
+ }
1837
+ },
1838
+ "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": {
1839
+ "version": "0.3.9",
1840
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
1841
+ "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
1842
+ "dev": true,
1843
+ "license": "MIT",
1844
+ "dependencies": {
1845
+ "@jridgewell/resolve-uri": "^3.0.3",
1846
+ "@jridgewell/sourcemap-codec": "^1.4.10"
1847
+ }
1848
+ },
1849
+ "node_modules/@docsearch/css": {
1850
+ "version": "3.8.2",
1851
+ "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.8.2.tgz",
1852
+ "integrity": "sha512-y05ayQFyUmCXze79+56v/4HpycYF3uFqB78pLPrSV5ZKAlDuIAAJNhaRi8tTdRNXh05yxX/TyNnzD6LwSM89vQ==",
1853
+ "dev": true,
1854
+ "license": "MIT"
1855
+ },
1856
+ "node_modules/@docsearch/js": {
1857
+ "version": "3.8.2",
1858
+ "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.8.2.tgz",
1859
+ "integrity": "sha512-Q5wY66qHn0SwA7Taa0aDbHiJvaFJLOJyHmooQ7y8hlwwQLQ/5WwCcoX0g7ii04Qi2DJlHsd0XXzJ8Ypw9+9YmQ==",
1860
+ "dev": true,
1861
+ "license": "MIT",
1862
+ "dependencies": {
1863
+ "@docsearch/react": "3.8.2",
1864
+ "preact": "^10.0.0"
1865
+ }
1866
+ },
1867
+ "node_modules/@docsearch/react": {
1868
+ "version": "3.8.2",
1869
+ "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.8.2.tgz",
1870
+ "integrity": "sha512-xCRrJQlTt8N9GU0DG4ptwHRkfnSnD/YpdeaXe02iKfqs97TkZJv60yE+1eq/tjPcVnTW8dP5qLP7itifFVV5eg==",
1871
+ "dev": true,
1872
+ "license": "MIT",
1873
+ "dependencies": {
1874
+ "@algolia/autocomplete-core": "1.17.7",
1875
+ "@algolia/autocomplete-preset-algolia": "1.17.7",
1876
+ "@docsearch/css": "3.8.2",
1877
+ "algoliasearch": "^5.14.2"
1878
+ },
1879
+ "peerDependencies": {
1880
+ "@types/react": ">= 16.8.0 < 19.0.0",
1881
+ "react": ">= 16.8.0 < 19.0.0",
1882
+ "react-dom": ">= 16.8.0 < 19.0.0",
1883
+ "search-insights": ">= 1 < 3"
1884
+ },
1885
+ "peerDependenciesMeta": {
1886
+ "@types/react": {
1887
+ "optional": true
1888
+ },
1889
+ "react": {
1890
+ "optional": true
1891
+ },
1892
+ "react-dom": {
1893
+ "optional": true
1894
+ },
1895
+ "search-insights": {
1896
+ "optional": true
1897
+ }
1898
+ }
1899
+ },
1900
+ "node_modules/@earendil-works/pi-ai": {
1901
+ "version": "0.85.1",
1902
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.85.1.tgz",
1903
+ "integrity": "sha512-+VgVIJDkDO2efYJKEEqvPTH4zmnIaXdAppGbO+vKFA9qy5PdhFiAenuFAkU+oiCSfOC4dMHDyrjdQeL4ZoC5CQ==",
1904
+ "license": "MIT",
1905
+ "dependencies": {
1906
+ "@anthropic-ai/sdk": "0.123.0",
1907
+ "@aws-sdk/client-bedrock-runtime": "3.1048.0",
1908
+ "@earendil-works/pi-telemetry": "^0.85.1",
1909
+ "@google/genai": "1.52.0",
1910
+ "@smithy/node-http-handler": "4.7.3",
1911
+ "http-proxy-agent": "7.0.2",
1912
+ "https-proxy-agent": "7.0.6",
1913
+ "openai": "6.40.0",
1914
+ "partial-json": "0.1.7",
1915
+ "typebox": "1.3.7"
1916
+ },
1917
+ "bin": {
1918
+ "pi-ai": "dist/cli.js"
1919
+ },
1920
+ "engines": {
1921
+ "node": ">=22.19.0"
1922
+ }
1923
+ },
1924
+ "node_modules/@earendil-works/pi-ai/node_modules/@anthropic-ai/sdk": {
1925
+ "version": "0.123.0",
1926
+ "resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.123.0.tgz",
1927
+ "integrity": "sha512-Y9oX9mPNGZClHQOFqrWRk43Srcu/UHuPq3rfxxOq7JgW0gi+lJA2MAOK4Ul3k/+AUrwRWFJvd0tK3oC0Pw25dw==",
1928
+ "license": "MIT",
1929
+ "dependencies": {
1930
+ "json-schema-to-ts": "^3.1.1",
1931
+ "standardwebhooks": "^1.0.0"
1932
+ },
1933
+ "bin": {
1934
+ "anthropic-ai-sdk": "bin/cli"
1935
+ },
1936
+ "peerDependencies": {
1937
+ "zod": "^3.25.0 || ^4.0.0"
1938
+ },
1939
+ "peerDependenciesMeta": {
1940
+ "zod": {
1941
+ "optional": true
1942
+ }
1943
+ }
1944
+ },
1945
+ "node_modules/@earendil-works/pi-coding-agent": {
1946
+ "version": "0.85.1",
1947
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-coding-agent/-/pi-coding-agent-0.85.1.tgz",
1948
+ "integrity": "sha512-FGRN+OHbWaefBPGaTggAdLjrIHW+s2PzLyglz/5dfLzb9of7uuXMXYC0fJIeZTw+shS32o2cuQ9jF7YSDuL/oQ==",
1949
+ "dev": true,
1950
+ "hasShrinkwrap": true,
1951
+ "license": "MIT",
1952
+ "dependencies": {
1953
+ "@earendil-works/chord": "^0.85.1",
1954
+ "@earendil-works/pi-agent-core": "^0.85.1",
1955
+ "@earendil-works/pi-ai": "^0.85.1",
1956
+ "@earendil-works/pi-tui": "^0.85.1",
1957
+ "@silvia-odwyer/photon-node": "0.3.4",
1958
+ "chalk": "5.6.2",
1959
+ "cross-spawn": "7.0.6",
1960
+ "diff": "8.0.4",
1961
+ "grok-mermaid": "0.2.2",
1962
+ "highlight.js": "10.7.3",
1963
+ "hosted-git-info": "9.0.3",
1964
+ "ignore": "7.0.5",
1965
+ "jiti": "2.7.0",
1966
+ "minimatch": "10.2.5",
1967
+ "proper-lockfile": "4.1.2",
1968
+ "semver": "7.8.0",
1969
+ "typebox": "1.3.7",
1970
+ "undici": "8.9.0",
1971
+ "yaml": "2.9.0"
1972
+ },
1973
+ "bin": {
1974
+ "pi": "dist/bundle/cli.js"
1975
+ },
1976
+ "engines": {
1977
+ "node": ">=22.19.0"
1978
+ },
1979
+ "optionalDependencies": {
1980
+ "@mariozechner/clipboard": "0.3.9"
1981
+ }
1982
+ },
1983
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@anthropic-ai/sdk": {
1984
+ "version": "0.123.0",
1985
+ "resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.123.0.tgz",
1986
+ "integrity": "sha512-Y9oX9mPNGZClHQOFqrWRk43Srcu/UHuPq3rfxxOq7JgW0gi+lJA2MAOK4Ul3k/+AUrwRWFJvd0tK3oC0Pw25dw==",
1987
+ "dev": true,
1988
+ "license": "MIT",
1989
+ "dependencies": {
1990
+ "json-schema-to-ts": "^3.1.1",
1991
+ "standardwebhooks": "^1.0.0"
1992
+ },
1993
+ "bin": {
1994
+ "anthropic-ai-sdk": "bin/cli"
1995
+ },
1996
+ "peerDependencies": {
1997
+ "zod": "^3.25.0 || ^4.0.0"
1998
+ },
1999
+ "peerDependenciesMeta": {
2000
+ "zod": {
2001
+ "optional": true
2002
+ }
2003
+ }
2004
+ },
2005
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/crc32": {
2006
+ "version": "5.2.0",
2007
+ "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-5.2.0.tgz",
2008
+ "integrity": "sha512-nLbCWqQNgUiwwtFsen1AdzAtvuLRsQS8rYgMuxCrdKf9kOssamGLuPwyTY9wyYblNr9+1XM8v6zoDTPPSIeANg==",
2009
+ "dev": true,
2010
+ "license": "Apache-2.0",
2011
+ "dependencies": {
2012
+ "@aws-crypto/util": "^5.2.0",
2013
+ "@aws-sdk/types": "^3.222.0",
2014
+ "tslib": "^2.6.2"
2015
+ },
2016
+ "engines": {
2017
+ "node": ">=16.0.0"
2018
+ }
2019
+ },
2020
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/sha256-browser": {
2021
+ "version": "5.2.0",
2022
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-5.2.0.tgz",
2023
+ "integrity": "sha512-AXfN/lGotSQwu6HNcEsIASo7kWXZ5HYWvfOmSNKDsEqC4OashTp8alTmaz+F7TC2L083SFv5RdB+qU3Vs1kZqw==",
2024
+ "dev": true,
2025
+ "license": "Apache-2.0",
2026
+ "dependencies": {
2027
+ "@aws-crypto/sha256-js": "^5.2.0",
2028
+ "@aws-crypto/supports-web-crypto": "^5.2.0",
2029
+ "@aws-crypto/util": "^5.2.0",
2030
+ "@aws-sdk/types": "^3.222.0",
2031
+ "@aws-sdk/util-locate-window": "^3.0.0",
2032
+ "@smithy/util-utf8": "^2.0.0",
2033
+ "tslib": "^2.6.2"
2034
+ }
2035
+ },
2036
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/sha256-js": {
2037
+ "version": "5.2.0",
2038
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-5.2.0.tgz",
2039
+ "integrity": "sha512-FFQQyu7edu4ufvIZ+OadFpHHOt+eSTBaYaki44c+akjg7qZg9oOQeLlk77F6tSYqjDAFClrHJk9tMf0HdVyOvA==",
2040
+ "dev": true,
2041
+ "license": "Apache-2.0",
2042
+ "dependencies": {
2043
+ "@aws-crypto/util": "^5.2.0",
2044
+ "@aws-sdk/types": "^3.222.0",
2045
+ "tslib": "^2.6.2"
2046
+ },
2047
+ "engines": {
2048
+ "node": ">=16.0.0"
2049
+ }
2050
+ },
2051
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/supports-web-crypto": {
2052
+ "version": "5.2.0",
2053
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-5.2.0.tgz",
2054
+ "integrity": "sha512-iAvUotm021kM33eCdNfwIN//F77/IADDSs58i+MDaOqFrVjZo9bAal0NK7HurRuWLLpF1iLX7gbWrjHjeo+YFg==",
2055
+ "dev": true,
2056
+ "license": "Apache-2.0",
2057
+ "dependencies": {
2058
+ "tslib": "^2.6.2"
2059
+ }
2060
+ },
2061
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-crypto/util": {
2062
+ "version": "5.2.0",
2063
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-5.2.0.tgz",
2064
+ "integrity": "sha512-4RkU9EsI6ZpBve5fseQlGNUWKMa1RLPQ1dnjnQoe07ldfIzcsGb5hC5W0Dm7u423KWzawlrpbjXBrXCEv9zazQ==",
2065
+ "dev": true,
2066
+ "license": "Apache-2.0",
2067
+ "dependencies": {
2068
+ "@aws-sdk/types": "^3.222.0",
2069
+ "@smithy/util-utf8": "^2.0.0",
2070
+ "tslib": "^2.6.2"
2071
+ }
2072
+ },
2073
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/client-bedrock-runtime": {
2074
+ "version": "3.1048.0",
2075
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-bedrock-runtime/-/client-bedrock-runtime-3.1048.0.tgz",
2076
+ "integrity": "sha512-u+NT61JZEkRFtpL0CAw1N1dwxnaLgwVXQl/zjJxTGgLyS/jTIdg2SdoEoCTHxgDyCnqa1HEi9QOoE9/pYRNpOQ==",
2077
+ "dev": true,
2078
+ "license": "Apache-2.0",
2079
+ "dependencies": {
2080
+ "@aws-crypto/sha256-browser": "5.2.0",
2081
+ "@aws-crypto/sha256-js": "5.2.0",
2082
+ "@aws-sdk/core": "^3.974.11",
2083
+ "@aws-sdk/credential-provider-node": "^3.972.42",
2084
+ "@aws-sdk/eventstream-handler-node": "^3.972.16",
2085
+ "@aws-sdk/middleware-eventstream": "^3.972.12",
2086
+ "@aws-sdk/middleware-websocket": "^3.972.19",
2087
+ "@aws-sdk/token-providers": "3.1048.0",
2088
+ "@aws-sdk/types": "^3.973.8",
2089
+ "@smithy/core": "^3.24.2",
2090
+ "@smithy/fetch-http-handler": "^5.4.2",
2091
+ "@smithy/node-http-handler": "^4.7.2",
2092
+ "@smithy/types": "^4.14.1",
2093
+ "tslib": "^2.6.2"
2094
+ },
2095
+ "engines": {
2096
+ "node": ">=20.0.0"
2097
+ }
2098
+ },
2099
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/core": {
2100
+ "version": "3.974.11",
2101
+ "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.974.11.tgz",
2102
+ "integrity": "sha512-QpnINq5FZH6EOaDEkmHdT7eUunbvD27pDNQypaWjFyYz7Zl1q3UCMQErBZxpmfGfI7MvI2TlK8KTkgNpv8b1ug==",
2103
+ "dev": true,
2104
+ "license": "Apache-2.0",
2105
+ "dependencies": {
2106
+ "@aws-sdk/types": "^3.973.8",
2107
+ "@aws-sdk/xml-builder": "^3.972.24",
2108
+ "@aws/lambda-invoke-store": "^0.2.2",
2109
+ "@smithy/core": "^3.24.2",
2110
+ "@smithy/signature-v4": "^5.4.2",
2111
+ "@smithy/types": "^4.14.1",
2112
+ "bowser": "^2.11.0",
2113
+ "tslib": "^2.6.2"
2114
+ },
2115
+ "engines": {
2116
+ "node": ">=20.0.0"
2117
+ }
2118
+ },
2119
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-env": {
2120
+ "version": "3.972.37",
2121
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.972.37.tgz",
2122
+ "integrity": "sha512-/jpPvEh6f7ntmIzf7dNxoNX6Q8vt8UpesCjbW6mFfk4V1NW6bIy9qxcQ6WbA8As5yQhsZOe+xeNd4xHX8kdY2Q==",
2123
+ "dev": true,
2124
+ "license": "Apache-2.0",
2125
+ "dependencies": {
2126
+ "@aws-sdk/core": "^3.974.11",
2127
+ "@aws-sdk/types": "^3.973.8",
2128
+ "@smithy/core": "^3.24.2",
2129
+ "@smithy/types": "^4.14.1",
2130
+ "tslib": "^2.6.2"
2131
+ },
2132
+ "engines": {
2133
+ "node": ">=20.0.0"
2134
+ }
2135
+ },
2136
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-http": {
2137
+ "version": "3.972.39",
2138
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.972.39.tgz",
2139
+ "integrity": "sha512-pIgTpisWyWg7X1bUbzSjuUYosYTD0Ghz2M0hkSTmb3a6i3qV3uU+NYJPI/E2XSC0HcsZh5rsLPzeXrkb2DS0Cg==",
2140
+ "dev": true,
2141
+ "license": "Apache-2.0",
2142
+ "dependencies": {
2143
+ "@aws-sdk/core": "^3.974.11",
2144
+ "@aws-sdk/types": "^3.973.8",
2145
+ "@smithy/core": "^3.24.2",
2146
+ "@smithy/fetch-http-handler": "^5.4.2",
2147
+ "@smithy/node-http-handler": "^4.7.2",
2148
+ "@smithy/types": "^4.14.1",
2149
+ "tslib": "^2.6.2"
2150
+ },
2151
+ "engines": {
2152
+ "node": ">=20.0.0"
2153
+ }
2154
+ },
2155
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-ini": {
2156
+ "version": "3.972.41",
2157
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.972.41.tgz",
2158
+ "integrity": "sha512-u2tyjaxJJzW8UtW4SM1ZcPMDwO6y+kV+llvou+Adts0FAKyzes5jG4izQN+KX3yE8ZROpS5y1LJ//xL2iSf76w==",
2159
+ "dev": true,
2160
+ "license": "Apache-2.0",
2161
+ "dependencies": {
2162
+ "@aws-sdk/core": "^3.974.11",
2163
+ "@aws-sdk/credential-provider-env": "^3.972.37",
2164
+ "@aws-sdk/credential-provider-http": "^3.972.39",
2165
+ "@aws-sdk/credential-provider-login": "^3.972.41",
2166
+ "@aws-sdk/credential-provider-process": "^3.972.37",
2167
+ "@aws-sdk/credential-provider-sso": "^3.972.41",
2168
+ "@aws-sdk/credential-provider-web-identity": "^3.972.41",
2169
+ "@aws-sdk/nested-clients": "^3.997.9",
2170
+ "@aws-sdk/types": "^3.973.8",
2171
+ "@smithy/core": "^3.24.2",
2172
+ "@smithy/credential-provider-imds": "^4.3.2",
2173
+ "@smithy/types": "^4.14.1",
2174
+ "tslib": "^2.6.2"
2175
+ },
2176
+ "engines": {
2177
+ "node": ">=20.0.0"
2178
+ }
2179
+ },
2180
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-login": {
2181
+ "version": "3.972.41",
2182
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-login/-/credential-provider-login-3.972.41.tgz",
2183
+ "integrity": "sha512-0LBitxXiAiaE5nlFPfpNIww/8FRY/I7WIndWsc9GmNFOM7cE1wNpVNQEGEk9Outg5l8xl+3vybxFyUy4l9q/LQ==",
2184
+ "dev": true,
2185
+ "license": "Apache-2.0",
2186
+ "dependencies": {
2187
+ "@aws-sdk/core": "^3.974.11",
2188
+ "@aws-sdk/nested-clients": "^3.997.9",
2189
+ "@aws-sdk/types": "^3.973.8",
2190
+ "@smithy/core": "^3.24.2",
2191
+ "@smithy/types": "^4.14.1",
2192
+ "tslib": "^2.6.2"
2193
+ },
2194
+ "engines": {
2195
+ "node": ">=20.0.0"
2196
+ }
2197
+ },
2198
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-node": {
2199
+ "version": "3.972.42",
2200
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.972.42.tgz",
2201
+ "integrity": "sha512-D4oon2zbqqsWOJUM99Gm3/ZyJ0IJvTXVN3PyloGb3kQEyI36fjCZheZj422lAgTWWd6TSHgiImLt3RIaLdv3dQ==",
2202
+ "dev": true,
2203
+ "license": "Apache-2.0",
2204
+ "dependencies": {
2205
+ "@aws-sdk/credential-provider-env": "^3.972.37",
2206
+ "@aws-sdk/credential-provider-http": "^3.972.39",
2207
+ "@aws-sdk/credential-provider-ini": "^3.972.41",
2208
+ "@aws-sdk/credential-provider-process": "^3.972.37",
2209
+ "@aws-sdk/credential-provider-sso": "^3.972.41",
2210
+ "@aws-sdk/credential-provider-web-identity": "^3.972.41",
2211
+ "@aws-sdk/types": "^3.973.8",
2212
+ "@smithy/core": "^3.24.2",
2213
+ "@smithy/credential-provider-imds": "^4.3.2",
2214
+ "@smithy/types": "^4.14.1",
2215
+ "tslib": "^2.6.2"
2216
+ },
2217
+ "engines": {
2218
+ "node": ">=20.0.0"
2219
+ }
2220
+ },
2221
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-process": {
2222
+ "version": "3.972.37",
2223
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.972.37.tgz",
2224
+ "integrity": "sha512-7nVaHBUaWIddASYfVaA9O4D5ZVjewU3sCol9WqZPGfW0nR+0WqE0xHZnD/U2L33PlOB8KNXGKZ6wOES/QijKzg==",
2225
+ "dev": true,
2226
+ "license": "Apache-2.0",
2227
+ "dependencies": {
2228
+ "@aws-sdk/core": "^3.974.11",
2229
+ "@aws-sdk/types": "^3.973.8",
2230
+ "@smithy/core": "^3.24.2",
2231
+ "@smithy/types": "^4.14.1",
2232
+ "tslib": "^2.6.2"
2233
+ },
2234
+ "engines": {
2235
+ "node": ">=20.0.0"
2236
+ }
2237
+ },
2238
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-sso": {
2239
+ "version": "3.972.41",
2240
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.972.41.tgz",
2241
+ "integrity": "sha512-IOWAWEHe5LkjSKkkUUX9ciV6Y1scHTsnfEkdt5yyC4Slrc7AGbkLPrpntjqh18ksJAMOaVhoBsO8p2WyTcY2wQ==",
2242
+ "dev": true,
2243
+ "license": "Apache-2.0",
2244
+ "dependencies": {
2245
+ "@aws-sdk/core": "^3.974.11",
2246
+ "@aws-sdk/nested-clients": "^3.997.9",
2247
+ "@aws-sdk/token-providers": "3.1048.0",
2248
+ "@aws-sdk/types": "^3.973.8",
2249
+ "@smithy/core": "^3.24.2",
2250
+ "@smithy/types": "^4.14.1",
2251
+ "tslib": "^2.6.2"
2252
+ },
2253
+ "engines": {
2254
+ "node": ">=20.0.0"
2255
+ }
2256
+ },
2257
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/credential-provider-web-identity": {
2258
+ "version": "3.972.41",
2259
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.972.41.tgz",
2260
+ "integrity": "sha512-mbACk9Yypa8nm4iGZLs0PofOXEcTDOUw6wDnsPXNDNSd2WNXs1tSo+6nc/fh0jLYdfVZThhBL98PHW4aXFsG5A==",
2261
+ "dev": true,
2262
+ "license": "Apache-2.0",
2263
+ "dependencies": {
2264
+ "@aws-sdk/core": "^3.974.11",
2265
+ "@aws-sdk/nested-clients": "^3.997.9",
2266
+ "@aws-sdk/types": "^3.973.8",
2267
+ "@smithy/core": "^3.24.2",
2268
+ "@smithy/types": "^4.14.1",
2269
+ "tslib": "^2.6.2"
2270
+ },
2271
+ "engines": {
2272
+ "node": ">=20.0.0"
2273
+ }
2274
+ },
2275
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/eventstream-handler-node": {
2276
+ "version": "3.972.16",
2277
+ "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-handler-node/-/eventstream-handler-node-3.972.16.tgz",
2278
+ "integrity": "sha512-yedpPgKftqjU5SlPFHfqWpOw6xSCRieWRG1euWOlXn4WJxt2VX92VprCa2PpSOXjVCAeK6dTjW9eJRXVig9yGA==",
2279
+ "dev": true,
2280
+ "license": "Apache-2.0",
2281
+ "dependencies": {
2282
+ "@aws-sdk/types": "^3.973.8",
2283
+ "@smithy/core": "^3.24.2",
2284
+ "@smithy/types": "^4.14.1",
2285
+ "tslib": "^2.6.2"
2286
+ },
2287
+ "engines": {
2288
+ "node": ">=20.0.0"
2289
+ }
2290
+ },
2291
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/middleware-eventstream": {
2292
+ "version": "3.972.12",
2293
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-eventstream/-/middleware-eventstream-3.972.12.tgz",
2294
+ "integrity": "sha512-tHTHHCHNrq6XklQvlzHBDJG4Iuhh7NVPRdtmvP+nHFA+5sxPlIDzlAHHgfoYHGvT3NXP1yVP/L5c3opUn6T3Qg==",
2295
+ "dev": true,
2296
+ "license": "Apache-2.0",
2297
+ "dependencies": {
2298
+ "@aws-sdk/types": "^3.973.8",
2299
+ "@smithy/core": "^3.24.2",
2300
+ "@smithy/types": "^4.14.1",
2301
+ "tslib": "^2.6.2"
2302
+ },
2303
+ "engines": {
2304
+ "node": ">=20.0.0"
2305
+ }
2306
+ },
2307
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/middleware-websocket": {
2308
+ "version": "3.972.19",
2309
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-websocket/-/middleware-websocket-3.972.19.tgz",
2310
+ "integrity": "sha512-mkEhOGYozqKQkbFaVrjwr0faiwwZza1v5/jSY6Tucm3bD+uKTazIUH/4Yo6aMnQD2ua2W9cMP6s8mvwTcjtqHw==",
2311
+ "dev": true,
2312
+ "license": "Apache-2.0",
2313
+ "dependencies": {
2314
+ "@aws-sdk/core": "^3.974.11",
2315
+ "@aws-sdk/types": "^3.973.8",
2316
+ "@smithy/core": "^3.24.2",
2317
+ "@smithy/fetch-http-handler": "^5.4.2",
2318
+ "@smithy/signature-v4": "^5.4.2",
2319
+ "@smithy/types": "^4.14.1",
2320
+ "tslib": "^2.6.2"
2321
+ },
2322
+ "engines": {
2323
+ "node": ">= 14.0.0"
2324
+ }
2325
+ },
2326
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/nested-clients": {
2327
+ "version": "3.997.9",
2328
+ "resolved": "https://registry.npmjs.org/@aws-sdk/nested-clients/-/nested-clients-3.997.9.tgz",
2329
+ "integrity": "sha512-jPR3rnmRI4hWYyzfmTGBr7NblMp8QYYeflHXba1H6+7CGrWVqWKQzaXFQ4qbExqPRsXN3T3L3JxFhr6aouXUGQ==",
2330
+ "dev": true,
2331
+ "license": "Apache-2.0",
2332
+ "dependencies": {
2333
+ "@aws-crypto/sha256-browser": "5.2.0",
2334
+ "@aws-crypto/sha256-js": "5.2.0",
2335
+ "@aws-sdk/core": "^3.974.11",
2336
+ "@aws-sdk/signature-v4-multi-region": "^3.996.27",
2337
+ "@aws-sdk/types": "^3.973.8",
2338
+ "@smithy/core": "^3.24.2",
2339
+ "@smithy/fetch-http-handler": "^5.4.2",
2340
+ "@smithy/node-http-handler": "^4.7.2",
2341
+ "@smithy/types": "^4.14.1",
2342
+ "tslib": "^2.6.2"
2343
+ },
2344
+ "engines": {
2345
+ "node": ">=20.0.0"
2346
+ }
2347
+ },
2348
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/signature-v4-multi-region": {
2349
+ "version": "3.996.27",
2350
+ "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.996.27.tgz",
2351
+ "integrity": "sha512-0Phbz4t6HI3D3skxvG2uI+VWU034/nSIw1T8d+FPzzQG9EQTrw94o9mOKO2Gv3n3Oc8P7JD7RAUxkoneLWv5Eg==",
2352
+ "dev": true,
2353
+ "license": "Apache-2.0",
2354
+ "dependencies": {
2355
+ "@aws-sdk/types": "^3.973.8",
2356
+ "@smithy/core": "^3.24.2",
2357
+ "@smithy/signature-v4": "^5.4.2",
2358
+ "@smithy/types": "^4.14.1",
2359
+ "tslib": "^2.6.2"
2360
+ },
2361
+ "engines": {
2362
+ "node": ">=20.0.0"
2363
+ }
2364
+ },
2365
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/token-providers": {
2366
+ "version": "3.1048.0",
2367
+ "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.1048.0.tgz",
2368
+ "integrity": "sha512-k0y/GcuesuSfWyUM0WamrGyeZmltRYaPbHO82UDA6mZ/doB+FOHKutikPAtSXMn/hDz970cF+iRuuiYO9VEbAA==",
2369
+ "dev": true,
2370
+ "license": "Apache-2.0",
2371
+ "dependencies": {
2372
+ "@aws-sdk/core": "^3.974.11",
2373
+ "@aws-sdk/nested-clients": "^3.997.9",
2374
+ "@aws-sdk/types": "^3.973.8",
2375
+ "@smithy/core": "^3.24.2",
2376
+ "@smithy/types": "^4.14.1",
2377
+ "tslib": "^2.6.2"
2378
+ },
2379
+ "engines": {
2380
+ "node": ">=20.0.0"
2381
+ }
2382
+ },
2383
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/types": {
2384
+ "version": "3.973.8",
2385
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.973.8.tgz",
2386
+ "integrity": "sha512-gjlAdtHMbtR9X5iIhVUvbVcy55KnznpC6bkDUWW9z915bi0ckdUr5cjf16Kp6xq0bP5HBD2xzgbL9F9Quv5vUw==",
2387
+ "dev": true,
2388
+ "license": "Apache-2.0",
2389
+ "dependencies": {
2390
+ "@smithy/types": "^4.14.1",
2391
+ "tslib": "^2.6.2"
2392
+ },
2393
+ "engines": {
2394
+ "node": ">=20.0.0"
2395
+ }
2396
+ },
2397
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/util-locate-window": {
2398
+ "version": "3.965.5",
2399
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.965.5.tgz",
2400
+ "integrity": "sha512-WhlJNNINQB+9qtLtZJcpQdgZw3SCDCpXdUJP7cToGwHbCWCnRckGlc6Bx/OhWwIYFNAn+FIydY8SZ0QmVu3xTQ==",
2401
+ "dev": true,
2402
+ "license": "Apache-2.0",
2403
+ "dependencies": {
2404
+ "tslib": "^2.6.2"
2405
+ },
2406
+ "engines": {
2407
+ "node": ">=20.0.0"
2408
+ }
2409
+ },
2410
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws-sdk/xml-builder": {
2411
+ "version": "3.972.24",
2412
+ "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.972.24.tgz",
2413
+ "integrity": "sha512-V8z5YcDPfsvzrBlj0xR1vhRtocblhYbqdreCJB/voGd4Sr5zjNAeWxexbnqVtskTJe0vFb5KMqbSL++ePl+zRw==",
2414
+ "dev": true,
2415
+ "license": "Apache-2.0",
2416
+ "dependencies": {
2417
+ "@nodable/entities": "2.1.0",
2418
+ "@smithy/types": "^4.14.1",
2419
+ "fast-xml-parser": "5.7.3",
2420
+ "tslib": "^2.6.2"
2421
+ },
2422
+ "engines": {
2423
+ "node": ">=20.0.0"
2424
+ }
2425
+ },
2426
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@aws/lambda-invoke-store": {
2427
+ "version": "0.2.4",
2428
+ "resolved": "https://registry.npmjs.org/@aws/lambda-invoke-store/-/lambda-invoke-store-0.2.4.tgz",
2429
+ "integrity": "sha512-iY8yvjE0y651BixKNPgmv1WrQc+GZ142sb0z4gYnChDDY2YqI4P/jsSopBWrKfAt7LOJAkOXt7rC/hms+WclQQ==",
2430
+ "dev": true,
2431
+ "license": "Apache-2.0",
2432
+ "engines": {
2433
+ "node": ">=18.0.0"
2434
+ }
2435
+ },
2436
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@babel/runtime": {
2437
+ "version": "7.29.2",
2438
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.29.2.tgz",
2439
+ "integrity": "sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==",
2440
+ "dev": true,
2441
+ "license": "MIT",
2442
+ "engines": {
2443
+ "node": ">=6.9.0"
2444
+ }
2445
+ },
2446
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/chord": {
2447
+ "version": "0.85.1",
2448
+ "resolved": "https://registry.npmjs.org/@earendil-works/chord/-/chord-0.85.1.tgz",
2449
+ "dev": true,
2450
+ "license": "MIT",
2451
+ "dependencies": {
2452
+ "esbuild": "0.28.1"
2453
+ },
2454
+ "engines": {
2455
+ "node": ">=22.19.0"
2456
+ }
2457
+ },
2458
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-agent-core": {
2459
+ "version": "0.85.1",
2460
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-agent-core/-/pi-agent-core-0.85.1.tgz",
2461
+ "dev": true,
2462
+ "license": "MIT",
2463
+ "dependencies": {
2464
+ "@earendil-works/chord": "^0.85.1",
2465
+ "@earendil-works/pi-ai": "^0.85.1",
2466
+ "@earendil-works/pi-telemetry": "^0.85.1",
2467
+ "diff": "8.0.4",
2468
+ "ignore": "7.0.5",
2469
+ "typebox": "1.3.7",
2470
+ "yaml": "2.9.0"
2471
+ },
2472
+ "engines": {
2473
+ "node": ">=22.19.0"
2474
+ }
2475
+ },
2476
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-ai": {
2477
+ "version": "0.85.1",
2478
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.85.1.tgz",
2479
+ "dev": true,
2480
+ "license": "MIT",
2481
+ "dependencies": {
2482
+ "@anthropic-ai/sdk": "0.123.0",
2483
+ "@aws-sdk/client-bedrock-runtime": "3.1048.0",
2484
+ "@earendil-works/pi-telemetry": "^0.85.1",
2485
+ "@google/genai": "1.52.0",
2486
+ "@smithy/node-http-handler": "4.7.3",
2487
+ "http-proxy-agent": "7.0.2",
2488
+ "https-proxy-agent": "7.0.6",
2489
+ "openai": "6.40.0",
2490
+ "partial-json": "0.1.7",
2491
+ "typebox": "1.3.7"
2492
+ },
2493
+ "bin": {
2494
+ "pi-ai": "dist/cli.js"
2495
+ },
2496
+ "engines": {
2497
+ "node": ">=22.19.0"
2498
+ }
2499
+ },
2500
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-telemetry": {
2501
+ "version": "0.85.1",
2502
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-telemetry/-/pi-telemetry-0.85.1.tgz",
2503
+ "dev": true,
2504
+ "license": "MIT",
2505
+ "engines": {
2506
+ "node": ">=22.19.0"
2507
+ }
2508
+ },
2509
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@earendil-works/pi-tui": {
2510
+ "version": "0.85.1",
2511
+ "resolved": "https://registry.npmjs.org/@earendil-works/pi-tui/-/pi-tui-0.85.1.tgz",
2512
+ "dev": true,
2513
+ "license": "MIT",
2514
+ "dependencies": {
2515
+ "get-east-asian-width": "1.6.0",
2516
+ "marked": "18.0.5"
2517
+ },
2518
+ "engines": {
2519
+ "node": ">=22.19.0"
2520
+ }
2521
+ },
2522
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/aix-ppc64": {
2523
+ "version": "0.28.1",
2524
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.28.1.tgz",
2525
+ "integrity": "sha512-Svl7tq8k/08+p6CXPpRjQ1fKX+1odH/BQbb48fV6fj3CWHhsoIOoY87w1oHXm0qEpkIK3ZfVgp0hed3XBXzXMQ==",
2526
+ "cpu": [
2527
+ "ppc64"
2528
+ ],
2529
+ "dev": true,
2530
+ "license": "MIT",
2531
+ "optional": true,
2532
+ "os": [
2533
+ "aix"
2534
+ ],
2535
+ "engines": {
2536
+ "node": ">=18"
2537
+ }
2538
+ },
2539
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/android-arm": {
2540
+ "version": "0.28.1",
2541
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.28.1.tgz",
2542
+ "integrity": "sha512-0k2F129Xdio1TdJfzJ8sy1Q47vUD2NnwdhiAf7drUN1EBTfPf4hsFCtmMgu/6m8JSzsBrlmVjudMBQqOfG8usQ==",
2543
+ "cpu": [
2544
+ "arm"
2545
+ ],
2546
+ "dev": true,
2547
+ "license": "MIT",
2548
+ "optional": true,
2549
+ "os": [
2550
+ "android"
2551
+ ],
2552
+ "engines": {
2553
+ "node": ">=18"
2554
+ }
2555
+ },
2556
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/android-arm64": {
2557
+ "version": "0.28.1",
2558
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.28.1.tgz",
2559
+ "integrity": "sha512-34EGEbCIAgosYz6goLcopX6Mo7NyGv9tfwEM2/7Ce2VcVRk568iSvniGWcUXIy7wEDR1wzolcxcriFVrWYcwBg==",
2560
+ "cpu": [
2561
+ "arm64"
2562
+ ],
2563
+ "dev": true,
2564
+ "license": "MIT",
2565
+ "optional": true,
2566
+ "os": [
2567
+ "android"
2568
+ ],
2569
+ "engines": {
2570
+ "node": ">=18"
2571
+ }
2572
+ },
2573
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/android-x64": {
2574
+ "version": "0.28.1",
2575
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.28.1.tgz",
2576
+ "integrity": "sha512-dbwY7ltSMDWsRatcRpCnES4F+im88OCUgGZjy52shC7GqHRE/cYlxNbB4Z4UpJswpcc4Qxd2oE/ufM0p61IKng==",
2577
+ "cpu": [
2578
+ "x64"
2579
+ ],
2580
+ "dev": true,
2581
+ "license": "MIT",
2582
+ "optional": true,
2583
+ "os": [
2584
+ "android"
2585
+ ],
2586
+ "engines": {
2587
+ "node": ">=18"
2588
+ }
2589
+ },
2590
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/darwin-arm64": {
2591
+ "version": "0.28.1",
2592
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.28.1.tgz",
2593
+ "integrity": "sha512-TZbWkQY7kvTAXbXUT7uVACR5cMHsDiSz9z7ZKAX/RTq/WJEk3QyRr0wZpNhBDX+/0CtdqUIJlOiodQcta6tY3Q==",
2594
+ "cpu": [
2595
+ "arm64"
2596
+ ],
2597
+ "dev": true,
2598
+ "license": "MIT",
2599
+ "optional": true,
2600
+ "os": [
2601
+ "darwin"
2602
+ ],
2603
+ "engines": {
2604
+ "node": ">=18"
2605
+ }
2606
+ },
2607
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/darwin-x64": {
2608
+ "version": "0.28.1",
2609
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.28.1.tgz",
2610
+ "integrity": "sha512-zfdzgK9ACBNZLI/CyHTOx81SyNbM6YXn7rxSgX97VjyiPl9W1i4Ka4fgKECEoFCKGpvBj5qArWIGgQjOwkgskQ==",
2611
+ "cpu": [
2612
+ "x64"
2613
+ ],
2614
+ "dev": true,
2615
+ "license": "MIT",
2616
+ "optional": true,
2617
+ "os": [
2618
+ "darwin"
2619
+ ],
2620
+ "engines": {
2621
+ "node": ">=18"
2622
+ }
2623
+ },
2624
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/freebsd-arm64": {
2625
+ "version": "0.28.1",
2626
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.28.1.tgz",
2627
+ "integrity": "sha512-wG2EA8ENdEI0qhkSZMjfqrdY+ziCYCPMmtZjjIwOmXFjmyzEHn+UUxk5of+SYsjtfs3VpnlC7QLzSI5hY/rOAw==",
2628
+ "cpu": [
2629
+ "arm64"
2630
+ ],
2631
+ "dev": true,
2632
+ "license": "MIT",
2633
+ "optional": true,
2634
+ "os": [
2635
+ "freebsd"
2636
+ ],
2637
+ "engines": {
2638
+ "node": ">=18"
2639
+ }
2640
+ },
2641
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/freebsd-x64": {
2642
+ "version": "0.28.1",
2643
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.28.1.tgz",
2644
+ "integrity": "sha512-i7dZ9vQgnvSCzi/rYCXNgtF/U+eKZNJBzu3eTQbRgHnM7tNSizLOkRFAl3qzVc/Op/u5YkHHa4pf/3DOYHthLQ==",
2645
+ "cpu": [
2646
+ "x64"
2647
+ ],
2648
+ "dev": true,
2649
+ "license": "MIT",
2650
+ "optional": true,
2651
+ "os": [
2652
+ "freebsd"
2653
+ ],
2654
+ "engines": {
2655
+ "node": ">=18"
2656
+ }
2657
+ },
2658
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/linux-arm": {
2659
+ "version": "0.28.1",
2660
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.28.1.tgz",
2661
+ "integrity": "sha512-qVXBOHQS+d5Y722GwJzJUtOLlX7km3CraOaGormF1pDtPd2C/l1SHRPgjLunLGe51Sh5YYWKMFDyV4SxgMQYTQ==",
2662
+ "cpu": [
2663
+ "arm"
2664
+ ],
2665
+ "dev": true,
2666
+ "license": "MIT",
2667
+ "optional": true,
2668
+ "os": [
2669
+ "linux"
2670
+ ],
2671
+ "engines": {
2672
+ "node": ">=18"
2673
+ }
2674
+ },
2675
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/linux-arm64": {
2676
+ "version": "0.28.1",
2677
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.28.1.tgz",
2678
+ "integrity": "sha512-yHs+0uc8+nvEAfAfxrWQKK5peSNzBc4PegcMO0EJ2hT71uA7vB8Ihg2e77R2P7SG5uYjPbHlLLmve4LLLRCf0g==",
2679
+ "cpu": [
2680
+ "arm64"
2681
+ ],
2682
+ "dev": true,
2683
+ "license": "MIT",
2684
+ "optional": true,
2685
+ "os": [
2686
+ "linux"
2687
+ ],
2688
+ "engines": {
2689
+ "node": ">=18"
2690
+ }
2691
+ },
2692
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/linux-ia32": {
2693
+ "version": "0.28.1",
2694
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.28.1.tgz",
2695
+ "integrity": "sha512-d1z4ZuP0ajrfz/FhGT4vv278rX8KnPPJx8i5+AtK7TYbx9Le9F1hyzurZpkEyjkGa9dUGhQow4C1NmeGvqxN2w==",
2696
+ "cpu": [
2697
+ "ia32"
2698
+ ],
2699
+ "dev": true,
2700
+ "license": "MIT",
2701
+ "optional": true,
2702
+ "os": [
2703
+ "linux"
2704
+ ],
2705
+ "engines": {
2706
+ "node": ">=18"
2707
+ }
2708
+ },
2709
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/linux-loong64": {
2710
+ "version": "0.28.1",
2711
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.28.1.tgz",
2712
+ "integrity": "sha512-M5sRjUVZrkm1OAPR3dlOYzNmN+loZKGVi1VUQGrwuqLcbR6qeAz+famMhjASeH3YVKvZz+zT1jlh/keC3Rj/lg==",
2713
+ "cpu": [
2714
+ "loong64"
2715
+ ],
2716
+ "dev": true,
2717
+ "license": "MIT",
2718
+ "optional": true,
2719
+ "os": [
2720
+ "linux"
2721
+ ],
2722
+ "engines": {
2723
+ "node": ">=18"
2724
+ }
2725
+ },
2726
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/linux-mips64el": {
2727
+ "version": "0.28.1",
2728
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.28.1.tgz",
2729
+ "integrity": "sha512-mRObBZeHh2OxcBFPWE/FjylkRgZdYuiTR3vaTozquCGOH14iP9oN4x4Ge81CoIDYQrXmIxpFumJBu5MtZpnQJQ==",
2730
+ "cpu": [
2731
+ "mips64el"
2732
+ ],
2733
+ "dev": true,
2734
+ "license": "MIT",
2735
+ "optional": true,
2736
+ "os": [
2737
+ "linux"
2738
+ ],
2739
+ "engines": {
2740
+ "node": ">=18"
2741
+ }
2742
+ },
2743
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/linux-ppc64": {
2744
+ "version": "0.28.1",
2745
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.28.1.tgz",
2746
+ "integrity": "sha512-slScBsMAb3GFDcdrCgLwZtPYRoH2H/youv10QiZyRjmsP48fznoveWytSgCI/R0ZcUgpc0ZhIUEx6LHts8yrfQ==",
2747
+ "cpu": [
2748
+ "ppc64"
2749
+ ],
2750
+ "dev": true,
2751
+ "license": "MIT",
2752
+ "optional": true,
2753
+ "os": [
2754
+ "linux"
2755
+ ],
2756
+ "engines": {
2757
+ "node": ">=18"
2758
+ }
2759
+ },
2760
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/linux-riscv64": {
2761
+ "version": "0.28.1",
2762
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.28.1.tgz",
2763
+ "integrity": "sha512-kw0owk1o0GFETUJyW0jc0G4Yzs0BHZn0JDZ8JRT088vjJYX777BAs1fDGxAC+q831qOs2DTC96mNsG2opdfyyQ==",
2764
+ "cpu": [
2765
+ "riscv64"
2766
+ ],
2767
+ "dev": true,
2768
+ "license": "MIT",
2769
+ "optional": true,
2770
+ "os": [
2771
+ "linux"
2772
+ ],
2773
+ "engines": {
2774
+ "node": ">=18"
2775
+ }
2776
+ },
2777
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/linux-s390x": {
2778
+ "version": "0.28.1",
2779
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.28.1.tgz",
2780
+ "integrity": "sha512-/lAIjX8aYFRByhh6L5rYtPEDRqa9de/4V/juOXcta5frjvzXO4/sqEtyytse0g3zZFuWu5cDN0MkLz2qRDD2Ag==",
2781
+ "cpu": [
2782
+ "s390x"
2783
+ ],
2784
+ "dev": true,
2785
+ "license": "MIT",
2786
+ "optional": true,
2787
+ "os": [
2788
+ "linux"
2789
+ ],
2790
+ "engines": {
2791
+ "node": ">=18"
2792
+ }
2793
+ },
2794
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/linux-x64": {
2795
+ "version": "0.28.1",
2796
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.28.1.tgz",
2797
+ "integrity": "sha512-u/anNYF2mmVOEDwLtnQ1wOr3EZ9sTNGLWrsYGYwHWzGA3Si84IOkHXlbWTD1NB+9/1lcnweYKO54uhxZydNzfA==",
2798
+ "cpu": [
2799
+ "x64"
2800
+ ],
2801
+ "dev": true,
2802
+ "license": "MIT",
2803
+ "optional": true,
2804
+ "os": [
2805
+ "linux"
2806
+ ],
2807
+ "engines": {
2808
+ "node": ">=18"
2809
+ }
2810
+ },
2811
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/netbsd-arm64": {
2812
+ "version": "0.28.1",
2813
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.28.1.tgz",
2814
+ "integrity": "sha512-oks0DYbLwWMmaakTsCb+zL4E+aHRVLom9IJZOAthMQEPiQmydXHkziYEsGYRx0uNV/IjEKGAV941JzH02pflqw==",
2815
+ "cpu": [
2816
+ "arm64"
2817
+ ],
2818
+ "dev": true,
2819
+ "license": "MIT",
2820
+ "optional": true,
2821
+ "os": [
2822
+ "netbsd"
2823
+ ],
2824
+ "engines": {
2825
+ "node": ">=18"
2826
+ }
2827
+ },
2828
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/netbsd-x64": {
2829
+ "version": "0.28.1",
2830
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.28.1.tgz",
2831
+ "integrity": "sha512-aeL6lAnN89Hz43Mlh1G8ARasbuoYvSITDEx0tHh5b7jJnHcssqgjy9Yx430GDpmCa6OyrKoS0aNRjKundRizGg==",
2832
+ "cpu": [
2833
+ "x64"
2834
+ ],
2835
+ "dev": true,
2836
+ "license": "MIT",
2837
+ "optional": true,
2838
+ "os": [
2839
+ "netbsd"
2840
+ ],
2841
+ "engines": {
2842
+ "node": ">=18"
2843
+ }
2844
+ },
2845
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/openbsd-arm64": {
2846
+ "version": "0.28.1",
2847
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.28.1.tgz",
2848
+ "integrity": "sha512-MEFJe5C3R8pwXdZ5Y21oo6m7ePiS0d9pWucn99O/wvyJZChoIQKrQDxKrGeW8F5+T0okTHesAmDeiHDTIq0V/Q==",
2849
+ "cpu": [
2850
+ "arm64"
2851
+ ],
2852
+ "dev": true,
2853
+ "license": "MIT",
2854
+ "optional": true,
2855
+ "os": [
2856
+ "openbsd"
2857
+ ],
2858
+ "engines": {
2859
+ "node": ">=18"
2860
+ }
2861
+ },
2862
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/openbsd-x64": {
2863
+ "version": "0.28.1",
2864
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.28.1.tgz",
2865
+ "integrity": "sha512-i/ZLIOafE0Z8cI/XANJAixoJL/uRAoS2xOA3rb0xN+KK0K177cMAsQYkzHtBrtMXAKuAc7HGgcWiZ/sRC1Nxgw==",
2866
+ "cpu": [
2867
+ "x64"
2868
+ ],
2869
+ "dev": true,
2870
+ "license": "MIT",
2871
+ "optional": true,
2872
+ "os": [
2873
+ "openbsd"
2874
+ ],
2875
+ "engines": {
2876
+ "node": ">=18"
2877
+ }
2878
+ },
2879
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/openharmony-arm64": {
2880
+ "version": "0.28.1",
2881
+ "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.28.1.tgz",
2882
+ "integrity": "sha512-ge+Z7EXFNt2BO1oAMsVpiQ8EwndV9i1xXerAeTIK7AtPs3bKFXQM7nlRxDSIUIMeueR1CNXxqztLzdNeReKBJg==",
2883
+ "cpu": [
2884
+ "arm64"
2885
+ ],
2886
+ "dev": true,
2887
+ "license": "MIT",
2888
+ "optional": true,
2889
+ "os": [
2890
+ "openharmony"
2891
+ ],
2892
+ "engines": {
2893
+ "node": ">=18"
2894
+ }
2895
+ },
2896
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/sunos-x64": {
2897
+ "version": "0.28.1",
2898
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.28.1.tgz",
2899
+ "integrity": "sha512-BEjgtECkL3vY+SaSQ6nzVfiALUeFxpawyp8Jmf5PtYhf1Ug40N1h/hxlhts+f1FvSvarEigdxS3BlSMI2PJLcQ==",
2900
+ "cpu": [
2901
+ "x64"
2902
+ ],
2903
+ "dev": true,
2904
+ "license": "MIT",
2905
+ "optional": true,
2906
+ "os": [
2907
+ "sunos"
2908
+ ],
2909
+ "engines": {
2910
+ "node": ">=18"
2911
+ }
2912
+ },
2913
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/win32-arm64": {
2914
+ "version": "0.28.1",
2915
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.28.1.tgz",
2916
+ "integrity": "sha512-lCv9eK/H6ZJWbE7bh2nw54CZ9M2nupBxJcTsdk/QQnWkdSjKGuxmmH8/GWrlT1eMmZfn4dGcCjRte397WqfQXA==",
2917
+ "cpu": [
2918
+ "arm64"
2919
+ ],
2920
+ "dev": true,
2921
+ "license": "MIT",
2922
+ "optional": true,
2923
+ "os": [
2924
+ "win32"
2925
+ ],
2926
+ "engines": {
2927
+ "node": ">=18"
2928
+ }
2929
+ },
2930
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/win32-ia32": {
2931
+ "version": "0.28.1",
2932
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.28.1.tgz",
2933
+ "integrity": "sha512-zvb/mB2bSCoJOpoCBgYKKpX6YM6mJBlBUVUtVj41DlZJVEB6/0CKlRYxP5wWl1C1ILiCoAU5wZZ4q1P3qeS6Eg==",
2934
+ "cpu": [
2935
+ "ia32"
2936
+ ],
2937
+ "dev": true,
2938
+ "license": "MIT",
2939
+ "optional": true,
2940
+ "os": [
2941
+ "win32"
2942
+ ],
2943
+ "engines": {
2944
+ "node": ">=18"
2945
+ }
2946
+ },
2947
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@esbuild/win32-x64": {
2948
+ "version": "0.28.1",
2949
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.28.1.tgz",
2950
+ "integrity": "sha512-bm4Mowrv+GXMlpWX++EcXw/iLyd1o3+bJkC2DkWXYVvgZCqD/bSj9ctZeAMC3cIxgjRVR2Dufaiu4YPxr5gW1A==",
2951
+ "cpu": [
2952
+ "x64"
2953
+ ],
2954
+ "dev": true,
2955
+ "license": "MIT",
2956
+ "optional": true,
2957
+ "os": [
2958
+ "win32"
2959
+ ],
2960
+ "engines": {
2961
+ "node": ">=18"
2962
+ }
2963
+ },
2964
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@google/genai": {
2965
+ "version": "1.52.0",
2966
+ "resolved": "https://registry.npmjs.org/@google/genai/-/genai-1.52.0.tgz",
2967
+ "integrity": "sha512-gwSvbpiN/17O9TbsqSsE/OzZcpv5Fo4RQjdngGgogtuB9RsyJ8ZHhX5KjHj1bp5N9snN2eK8LDGXSaWW2hof8Q==",
2968
+ "dev": true,
2969
+ "hasInstallScript": true,
2970
+ "license": "Apache-2.0",
2971
+ "dependencies": {
2972
+ "google-auth-library": "^10.3.0",
2973
+ "p-retry": "^4.6.2",
2974
+ "protobufjs": "^7.5.4",
2975
+ "ws": "^8.18.0"
2976
+ },
2977
+ "engines": {
2978
+ "node": ">=20.0.0"
2979
+ },
2980
+ "peerDependencies": {
2981
+ "@modelcontextprotocol/sdk": "^1.25.2"
2982
+ },
2983
+ "peerDependenciesMeta": {
2984
+ "@modelcontextprotocol/sdk": {
2985
+ "optional": true
2986
+ }
2987
+ }
2988
+ },
2989
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard": {
2990
+ "version": "0.3.9",
2991
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard/-/clipboard-0.3.9.tgz",
2992
+ "integrity": "sha512-ABnA53mdfkGZwOFUdZNv2S0CWGO/EIuPj8Vv9xmBFmSYg/qFc7ihO6q5FcQjvoE67kZpWkEc4AhD6B/os04yuA==",
2993
+ "dev": true,
2994
+ "license": "MIT",
2995
+ "optional": true,
2996
+ "engines": {
2997
+ "node": ">= 10"
2998
+ },
2999
+ "optionalDependencies": {
3000
+ "@mariozechner/clipboard-darwin-arm64": "0.3.9",
3001
+ "@mariozechner/clipboard-darwin-universal": "0.3.9",
3002
+ "@mariozechner/clipboard-darwin-x64": "0.3.9",
3003
+ "@mariozechner/clipboard-linux-arm64-gnu": "0.3.9",
3004
+ "@mariozechner/clipboard-linux-arm64-musl": "0.3.9",
3005
+ "@mariozechner/clipboard-linux-riscv64-gnu": "0.3.9",
3006
+ "@mariozechner/clipboard-linux-x64-gnu": "0.3.9",
3007
+ "@mariozechner/clipboard-linux-x64-musl": "0.3.9",
3008
+ "@mariozechner/clipboard-win32-arm64-msvc": "0.3.9",
3009
+ "@mariozechner/clipboard-win32-x64-msvc": "0.3.9"
3010
+ }
3011
+ },
3012
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-darwin-arm64": {
3013
+ "version": "0.3.9",
3014
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-arm64/-/clipboard-darwin-arm64-0.3.9.tgz",
3015
+ "integrity": "sha512-BfgV7vCEWZwJwZJw03r6bP5+tf0iI/ANuQYCxi9RNn7FrWB3yzGuMKCrNLRl6V761vXRdL8+OqZ0wd4TqlsNOQ==",
3016
+ "cpu": [
3017
+ "arm64"
3018
+ ],
3019
+ "dev": true,
3020
+ "license": "MIT",
3021
+ "optional": true,
3022
+ "os": [
3023
+ "darwin"
3024
+ ],
3025
+ "engines": {
3026
+ "node": ">= 10"
3027
+ }
3028
+ },
3029
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-darwin-universal": {
3030
+ "version": "0.3.9",
3031
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-universal/-/clipboard-darwin-universal-0.3.9.tgz",
3032
+ "integrity": "sha512-BGGR4iA9Z2shAjI65eI5xtyb3LYNlDW9X3gxKxDbqtbnREohsrqznov6zpKoIrsRWpzlYVEdKphS7ksJ0/ndSQ==",
3033
+ "dev": true,
3034
+ "license": "MIT",
3035
+ "optional": true,
3036
+ "os": [
3037
+ "darwin"
3038
+ ],
3039
+ "engines": {
3040
+ "node": ">= 10"
3041
+ }
3042
+ },
3043
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-darwin-x64": {
3044
+ "version": "0.3.9",
3045
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-darwin-x64/-/clipboard-darwin-x64-0.3.9.tgz",
3046
+ "integrity": "sha512-4kURmCbS6nt8uYhtmWpUcJWyPHfmAr5dTpXD1nO3pIfa+TSQ9DbrGOYCKH+aEFW47XhQ4Vp8ZTszie+wfFvDKg==",
3047
+ "cpu": [
3048
+ "x64"
3049
+ ],
3050
+ "dev": true,
3051
+ "license": "MIT",
3052
+ "optional": true,
3053
+ "os": [
3054
+ "darwin"
3055
+ ],
3056
+ "engines": {
3057
+ "node": ">= 10"
3058
+ }
3059
+ },
3060
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-arm64-gnu": {
3061
+ "version": "0.3.9",
3062
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-arm64-gnu/-/clipboard-linux-arm64-gnu-0.3.9.tgz",
3063
+ "integrity": "sha512-g59OkUGP2DDfCOIKypHeYgv2M55u/cKvXa5dSxFbEJ34XvIQMdcVmpKCkGUro3ZgefXiGVdwguvTMQGpHWzIXw==",
3064
+ "cpu": [
3065
+ "arm64"
3066
+ ],
3067
+ "dev": true,
3068
+ "license": "MIT",
3069
+ "optional": true,
3070
+ "os": [
3071
+ "linux"
3072
+ ],
3073
+ "engines": {
3074
+ "node": ">= 10"
3075
+ }
3076
+ },
3077
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-arm64-musl": {
3078
+ "version": "0.3.9",
3079
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-arm64-musl/-/clipboard-linux-arm64-musl-0.3.9.tgz",
3080
+ "integrity": "sha512-AGuJdgKsmJdm4Pych7kv3sqe591ERRaAHW3xjLooiFzn8J+PxUyof++7YZrB5Y5tpnTO+K18Og3taj2NpluCRQ==",
3081
+ "cpu": [
3082
+ "arm64"
3083
+ ],
3084
+ "dev": true,
3085
+ "license": "MIT",
3086
+ "optional": true,
3087
+ "os": [
3088
+ "linux"
3089
+ ],
3090
+ "engines": {
3091
+ "node": ">= 10"
3092
+ }
3093
+ },
3094
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-riscv64-gnu": {
3095
+ "version": "0.3.9",
3096
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-riscv64-gnu/-/clipboard-linux-riscv64-gnu-0.3.9.tgz",
3097
+ "integrity": "sha512-DXBEAiuMpk7dhS1a9NzNxVAFi1vaKoPu7rQNgY8LIDLGrK3lnIp3nT10DUum+PKVJoJppIP+NAA8IZe4DMNDPw==",
3098
+ "cpu": [
3099
+ "riscv64"
3100
+ ],
3101
+ "dev": true,
3102
+ "license": "MIT",
3103
+ "optional": true,
3104
+ "os": [
3105
+ "linux"
3106
+ ],
3107
+ "engines": {
3108
+ "node": ">= 10"
3109
+ }
3110
+ },
3111
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-x64-gnu": {
3112
+ "version": "0.3.9",
3113
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-x64-gnu/-/clipboard-linux-x64-gnu-0.3.9.tgz",
3114
+ "integrity": "sha512-WORrMLd6EpElEME7JRKfSaY34nW1P5LbdgK5YNCS1ncG2LqmITsSMEJ8nh2mpvxb3TxqbOOKgY7k9eMJYlW9Mw==",
3115
+ "cpu": [
3116
+ "x64"
3117
+ ],
3118
+ "dev": true,
3119
+ "license": "MIT",
3120
+ "optional": true,
3121
+ "os": [
3122
+ "linux"
3123
+ ],
3124
+ "engines": {
3125
+ "node": ">= 10"
3126
+ }
3127
+ },
3128
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-linux-x64-musl": {
3129
+ "version": "0.3.9",
3130
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-linux-x64-musl/-/clipboard-linux-x64-musl-0.3.9.tgz",
3131
+ "integrity": "sha512-/DHn+1DrfL6oRaPPWXaOKvonFFrni666fxd+zFqiQEfvBH0tsHVWjq9iqBk0oDp0qaPA72lIMy5BptxISBEhZQ==",
3132
+ "cpu": [
3133
+ "x64"
3134
+ ],
3135
+ "dev": true,
3136
+ "license": "MIT",
3137
+ "optional": true,
3138
+ "os": [
3139
+ "linux"
3140
+ ],
3141
+ "engines": {
3142
+ "node": ">= 10"
3143
+ }
3144
+ },
3145
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-win32-arm64-msvc": {
3146
+ "version": "0.3.9",
3147
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-win32-arm64-msvc/-/clipboard-win32-arm64-msvc-0.3.9.tgz",
3148
+ "integrity": "sha512-O5FHD3ErkMwMhNzAfu3ggy0ug4z7btZuoQgwwxlzPrwV2bxlD6WDpqBY4NCgICAgZdDKdp+loUEKVAVt8aYnhQ==",
3149
+ "cpu": [
3150
+ "arm64"
3151
+ ],
3152
+ "dev": true,
3153
+ "license": "MIT",
3154
+ "optional": true,
3155
+ "os": [
3156
+ "win32"
3157
+ ],
3158
+ "engines": {
3159
+ "node": ">= 10"
3160
+ }
3161
+ },
3162
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@mariozechner/clipboard-win32-x64-msvc": {
3163
+ "version": "0.3.9",
3164
+ "resolved": "https://registry.npmjs.org/@mariozechner/clipboard-win32-x64-msvc/-/clipboard-win32-x64-msvc-0.3.9.tgz",
3165
+ "integrity": "sha512-ihQC3EufqEY81vhXBgVBtK4prL+wc62zJsSvxrgz7K1hsdt6OObz6v9p3Rn1OG3GJksTTKMJF0u/guMISHPhSA==",
3166
+ "cpu": [
3167
+ "x64"
3168
+ ],
3169
+ "dev": true,
3170
+ "license": "MIT",
3171
+ "optional": true,
3172
+ "os": [
3173
+ "win32"
3174
+ ],
3175
+ "engines": {
3176
+ "node": ">= 10"
3177
+ }
3178
+ },
3179
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@nodable/entities": {
3180
+ "version": "2.1.0",
3181
+ "resolved": "https://registry.npmjs.org/@nodable/entities/-/entities-2.1.0.tgz",
3182
+ "integrity": "sha512-nyT7T3nbMyBI/lvr6L5TyWbFJAI9FTgVRakNoBqCD+PmID8DzFrrNdLLtHMwMszOtqZa8PAOV24ZqDnQrhQINA==",
3183
+ "dev": true,
3184
+ "funding": [
3185
+ {
3186
+ "type": "github",
3187
+ "url": "https://github.com/sponsors/nodable"
3188
+ }
3189
+ ],
3190
+ "license": "MIT"
3191
+ },
3192
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/aspromise": {
3193
+ "version": "1.1.2",
3194
+ "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
3195
+ "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==",
3196
+ "dev": true,
3197
+ "license": "BSD-3-Clause"
3198
+ },
3199
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/base64": {
3200
+ "version": "1.1.2",
3201
+ "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
3202
+ "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==",
3203
+ "dev": true,
3204
+ "license": "BSD-3-Clause"
3205
+ },
3206
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/codegen": {
3207
+ "version": "2.0.5",
3208
+ "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.5.tgz",
3209
+ "integrity": "sha512-zgXFLzW3Ap33e6d0Wlj4MGIm6Ce8O89n/apUaGNB/jx+hw+ruWEp7EwGUshdLKVRCxZW12fp9r40E1mQrf/34g==",
3210
+ "dev": true,
3211
+ "license": "BSD-3-Clause"
3212
+ },
3213
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/eventemitter": {
3214
+ "version": "1.1.1",
3215
+ "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.1.tgz",
3216
+ "integrity": "sha512-vW1GmwMZNnL+gMRaovlh9yZX74kc+TTU3FObkkurpMaRtBfLP3ldjS9KQWlwZgraRE0+dheEEoAxdzcJQ8eXZg==",
3217
+ "dev": true,
3218
+ "license": "BSD-3-Clause"
3219
+ },
3220
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/fetch": {
3221
+ "version": "1.1.1",
3222
+ "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.1.tgz",
3223
+ "integrity": "sha512-GpptLrs57adMSuHi3VNj0mAF8dwh36LMaYF6XyJ6JMWlVsc+t42tm1HSEDmOs3A8fC9yyeisgLhsTVQokOZ0zw==",
3224
+ "dev": true,
3225
+ "license": "BSD-3-Clause",
3226
+ "dependencies": {
3227
+ "@protobufjs/aspromise": "^1.1.1"
3228
+ }
3229
+ },
3230
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/float": {
3231
+ "version": "1.0.2",
3232
+ "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
3233
+ "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==",
3234
+ "dev": true,
3235
+ "license": "BSD-3-Clause"
3236
+ },
3237
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/path": {
3238
+ "version": "1.1.2",
3239
+ "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
3240
+ "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==",
3241
+ "dev": true,
3242
+ "license": "BSD-3-Clause"
3243
+ },
3244
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/pool": {
3245
+ "version": "1.1.0",
3246
+ "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
3247
+ "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==",
3248
+ "dev": true,
3249
+ "license": "BSD-3-Clause"
3250
+ },
3251
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@protobufjs/utf8": {
3252
+ "version": "1.1.1",
3253
+ "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.1.tgz",
3254
+ "integrity": "sha512-oOAWABowe8EAbMyWKM0tYDKi8Yaox52D+HWZhAIJqQXbqe0xI/GV7FhLWqlEKreMkfDjshR5FKgi3mnle0h6Eg==",
3255
+ "dev": true,
3256
+ "license": "BSD-3-Clause"
3257
+ },
3258
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@silvia-odwyer/photon-node": {
3259
+ "version": "0.3.4",
3260
+ "resolved": "https://registry.npmjs.org/@silvia-odwyer/photon-node/-/photon-node-0.3.4.tgz",
3261
+ "integrity": "sha512-bnly4BKB3KDTFxrUIcgCLbaeVVS8lrAkri1pEzskpmxu9MdfGQTy8b8EgcD83ywD3RPMsIulY8xJH5Awa+t9fA==",
3262
+ "dev": true,
3263
+ "license": "Apache-2.0"
3264
+ },
3265
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/core": {
3266
+ "version": "3.24.3",
3267
+ "resolved": "https://registry.npmjs.org/@smithy/core/-/core-3.24.3.tgz",
3268
+ "integrity": "sha512-Ep/7tPamGY8mgESE3LyLKtxJyy6U52WWAqr/3wial47Sj4u3PiIF73AOGI27UyLy9duTkhZbgzodOfLV4TduZg==",
3269
+ "dev": true,
3270
+ "license": "Apache-2.0",
3271
+ "dependencies": {
3272
+ "@aws-crypto/crc32": "5.2.0",
3273
+ "@smithy/types": "^4.14.2",
3274
+ "tslib": "^2.6.2"
3275
+ },
3276
+ "engines": {
3277
+ "node": ">=18.0.0"
3278
+ }
3279
+ },
3280
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/credential-provider-imds": {
3281
+ "version": "4.3.3",
3282
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-4.3.3.tgz",
3283
+ "integrity": "sha512-I2Bti0DKFo2IJyN28ijCsx51BAumEYR4/1yZ1FXyBygy9MqbnMqCev4JPth/MbpRfBSRAX35hITSnAdJRo1u5w==",
3284
+ "dev": true,
3285
+ "license": "Apache-2.0",
3286
+ "dependencies": {
3287
+ "@smithy/core": "^3.24.3",
3288
+ "@smithy/types": "^4.14.2",
3289
+ "tslib": "^2.6.2"
3290
+ },
3291
+ "engines": {
3292
+ "node": ">=18.0.0"
3293
+ }
3294
+ },
3295
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/fetch-http-handler": {
3296
+ "version": "5.4.3",
3297
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-5.4.3.tgz",
3298
+ "integrity": "sha512-F+DRf8IJazRJgYog2A/yJK7eYVc0rqTlRzO+5ZxjJd4WkZoKz0IJRncf7G6t1pdVT3kryJcwuTFhN1c5m6N47A==",
3299
+ "dev": true,
3300
+ "license": "Apache-2.0",
3301
+ "dependencies": {
3302
+ "@smithy/core": "^3.24.3",
3303
+ "@smithy/types": "^4.14.2",
3304
+ "tslib": "^2.6.2"
3305
+ },
3306
+ "engines": {
3307
+ "node": ">=18.0.0"
3308
+ }
3309
+ },
3310
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/is-array-buffer": {
3311
+ "version": "2.2.0",
3312
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.2.0.tgz",
3313
+ "integrity": "sha512-GGP3O9QFD24uGeAXYUjwSTXARoqpZykHadOmA8G5vfJPK0/DC67qa//0qvqrJzL1xc8WQWX7/yc7fwudjPHPhA==",
3314
+ "dev": true,
3315
+ "license": "Apache-2.0",
3316
+ "dependencies": {
3317
+ "tslib": "^2.6.2"
3318
+ },
3319
+ "engines": {
3320
+ "node": ">=14.0.0"
3321
+ }
3322
+ },
3323
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/node-http-handler": {
3324
+ "version": "4.7.3",
3325
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-4.7.3.tgz",
3326
+ "integrity": "sha512-/jPhevcTFPMVl6KNjbaI47iOg1zxC7IsnX4PQDGVZKMFceOXtB8IEYaB7a9VvkP/3oC60WzTeKocvSI7vLT0vA==",
3327
+ "dev": true,
3328
+ "license": "Apache-2.0",
3329
+ "dependencies": {
3330
+ "@smithy/core": "^3.24.3",
3331
+ "@smithy/types": "^4.14.2",
3332
+ "tslib": "^2.6.2"
3333
+ },
3334
+ "engines": {
3335
+ "node": ">=18.0.0"
3336
+ }
3337
+ },
3338
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/signature-v4": {
3339
+ "version": "5.4.3",
3340
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-5.4.3.tgz",
3341
+ "integrity": "sha512-53+75QuPl6DL+ct6vVEB51FDO5oulXr20TPV46VvJZg76lIlXNWfxi8j+G2V/t0I2qxCBOa3vX/8bmjrpFVo9g==",
3342
+ "dev": true,
3343
+ "license": "Apache-2.0",
3344
+ "dependencies": {
3345
+ "@smithy/core": "^3.24.3",
3346
+ "@smithy/types": "^4.14.2",
3347
+ "tslib": "^2.6.2"
3348
+ },
3349
+ "engines": {
3350
+ "node": ">=18.0.0"
3351
+ }
3352
+ },
3353
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/types": {
3354
+ "version": "4.14.2",
3355
+ "resolved": "https://registry.npmjs.org/@smithy/types/-/types-4.14.2.tgz",
3356
+ "integrity": "sha512-P+otAxbV4CqBybp7EkcJCrig63yE2E7PuNVOmilVMRcx/O+QDzGULTrKsq4DV13gSfak9ObPrWaHl/9bL5YcWw==",
3357
+ "dev": true,
3358
+ "license": "Apache-2.0",
3359
+ "dependencies": {
3360
+ "tslib": "^2.6.2"
3361
+ },
3362
+ "engines": {
3363
+ "node": ">=18.0.0"
3364
+ }
3365
+ },
3366
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/util-buffer-from": {
3367
+ "version": "2.2.0",
3368
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.2.0.tgz",
3369
+ "integrity": "sha512-IJdWBbTcMQ6DA0gdNhh/BwrLkDR+ADW5Kr1aZmd4k3DIF6ezMV4R2NIAmT08wQJ3yUK82thHWmC/TnK/wpMMIA==",
3370
+ "dev": true,
3371
+ "license": "Apache-2.0",
3372
+ "dependencies": {
3373
+ "@smithy/is-array-buffer": "^2.2.0",
3374
+ "tslib": "^2.6.2"
3375
+ },
3376
+ "engines": {
3377
+ "node": ">=14.0.0"
3378
+ }
3379
+ },
3380
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@smithy/util-utf8": {
3381
+ "version": "2.3.0",
3382
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.3.0.tgz",
3383
+ "integrity": "sha512-R8Rdn8Hy72KKcebgLiv8jQcQkXoLMOGGv5uI1/k0l+snqkOzQ1R0ChUBCxWMlBsFMekWjq0wRudIweFs7sKT5A==",
3384
+ "dev": true,
3385
+ "license": "Apache-2.0",
3386
+ "dependencies": {
3387
+ "@smithy/util-buffer-from": "^2.2.0",
3388
+ "tslib": "^2.6.2"
3389
+ },
3390
+ "engines": {
3391
+ "node": ">=14.0.0"
3392
+ }
3393
+ },
3394
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@stablelib/base64": {
3395
+ "version": "1.0.1",
3396
+ "resolved": "https://registry.npmjs.org/@stablelib/base64/-/base64-1.0.1.tgz",
3397
+ "integrity": "sha512-1bnPQqSxSuc3Ii6MhBysoWCg58j97aUjuCSZrGSmDxNqtytIi0k8utUenAwTZN4V5mXXYGsVUI9zeBqy+jBOSQ==",
3398
+ "dev": true,
3399
+ "license": "MIT"
3400
+ },
3401
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/@types/node": {
3402
+ "version": "22.19.19",
3403
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.19.19.tgz",
3404
+ "integrity": "sha512-dyh/xO2Fh5bYrfWaaqGrRQQGkNdmYw6AmaAUvYeUMNTWQtvb796ikLdmTchRmOlOiIJ1TDXfWgVx1QkUlQ6Hew==",
3405
+ "dev": true,
3406
+ "license": "MIT",
3407
+ "dependencies": {
3408
+ "undici-types": "~6.21.0"
3409
+ }
3410
+ },
3411
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/agent-base": {
3412
+ "version": "7.1.4",
3413
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz",
3414
+ "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==",
3415
+ "dev": true,
3416
+ "license": "MIT",
3417
+ "engines": {
3418
+ "node": ">= 14"
3419
+ }
3420
+ },
3421
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/balanced-match": {
3422
+ "version": "4.0.4",
3423
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-4.0.4.tgz",
3424
+ "integrity": "sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==",
3425
+ "dev": true,
3426
+ "license": "MIT",
3427
+ "engines": {
3428
+ "node": "18 || 20 || >=22"
3429
+ }
3430
+ },
3431
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/base64-js": {
3432
+ "version": "1.5.1",
3433
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
3434
+ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
3435
+ "dev": true,
3436
+ "funding": [
3437
+ {
3438
+ "type": "github",
3439
+ "url": "https://github.com/sponsors/feross"
3440
+ },
3441
+ {
3442
+ "type": "patreon",
3443
+ "url": "https://www.patreon.com/feross"
3444
+ },
3445
+ {
3446
+ "type": "consulting",
3447
+ "url": "https://feross.org/support"
3448
+ }
3449
+ ],
3450
+ "license": "MIT"
3451
+ },
3452
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/bignumber.js": {
3453
+ "version": "9.3.1",
3454
+ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.3.1.tgz",
3455
+ "integrity": "sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==",
3456
+ "dev": true,
3457
+ "license": "MIT",
3458
+ "engines": {
3459
+ "node": "*"
3460
+ }
3461
+ },
3462
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/bowser": {
3463
+ "version": "2.14.1",
3464
+ "resolved": "https://registry.npmjs.org/bowser/-/bowser-2.14.1.tgz",
3465
+ "integrity": "sha512-tzPjzCxygAKWFOJP011oxFHs57HzIhOEracIgAePE4pqB3LikALKnSzUyU4MGs9/iCEUuHlAJTjTc5M+u7YEGg==",
3466
+ "dev": true,
3467
+ "license": "MIT"
3468
+ },
3469
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/brace-expansion": {
3470
+ "version": "5.0.9",
3471
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz",
3472
+ "integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==",
3473
+ "dev": true,
3474
+ "license": "MIT",
3475
+ "dependencies": {
3476
+ "balanced-match": "^4.0.2"
3477
+ },
3478
+ "engines": {
3479
+ "node": "20 || >=22"
3480
+ }
3481
+ },
3482
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/buffer-equal-constant-time": {
3483
+ "version": "1.0.1",
3484
+ "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz",
3485
+ "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==",
3486
+ "dev": true,
3487
+ "license": "BSD-3-Clause"
3488
+ },
3489
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/chalk": {
3490
+ "version": "5.6.2",
3491
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.6.2.tgz",
3492
+ "integrity": "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==",
3493
+ "dev": true,
3494
+ "license": "MIT",
3495
+ "engines": {
3496
+ "node": "^12.17.0 || ^14.13 || >=16.0.0"
3497
+ },
3498
+ "funding": {
3499
+ "url": "https://github.com/chalk/chalk?sponsor=1"
3500
+ }
3501
+ },
3502
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/cross-spawn": {
3503
+ "version": "7.0.6",
3504
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
3505
+ "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
3506
+ "dev": true,
3507
+ "license": "MIT",
3508
+ "dependencies": {
3509
+ "path-key": "^3.1.0",
3510
+ "shebang-command": "^2.0.0",
3511
+ "which": "^2.0.1"
3512
+ },
3513
+ "engines": {
3514
+ "node": ">= 8"
3515
+ }
3516
+ },
3517
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/data-uri-to-buffer": {
3518
+ "version": "4.0.1",
3519
+ "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz",
3520
+ "integrity": "sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==",
3521
+ "dev": true,
3522
+ "license": "MIT",
3523
+ "engines": {
3524
+ "node": ">= 12"
3525
+ }
3526
+ },
3527
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/debug": {
3528
+ "version": "4.4.3",
3529
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
3530
+ "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==",
3531
+ "dev": true,
3532
+ "license": "MIT",
3533
+ "dependencies": {
3534
+ "ms": "^2.1.3"
3535
+ },
3536
+ "engines": {
3537
+ "node": ">=6.0"
3538
+ },
3539
+ "peerDependenciesMeta": {
3540
+ "supports-color": {
3541
+ "optional": true
3542
+ }
3543
+ }
3544
+ },
3545
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/diff": {
3546
+ "version": "8.0.4",
3547
+ "resolved": "https://registry.npmjs.org/diff/-/diff-8.0.4.tgz",
3548
+ "integrity": "sha512-DPi0FmjiSU5EvQV0++GFDOJ9ASQUVFh5kD+OzOnYdi7n3Wpm9hWWGfB/O2blfHcMVTL5WkQXSnRiK9makhrcnw==",
3549
+ "dev": true,
3550
+ "license": "BSD-3-Clause",
3551
+ "engines": {
3552
+ "node": ">=0.3.1"
3553
+ }
3554
+ },
3555
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ecdsa-sig-formatter": {
3556
+ "version": "1.0.11",
3557
+ "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz",
3558
+ "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==",
3559
+ "dev": true,
3560
+ "license": "Apache-2.0",
3561
+ "dependencies": {
3562
+ "safe-buffer": "^5.0.1"
3563
+ }
3564
+ },
3565
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/esbuild": {
3566
+ "version": "0.28.1",
3567
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.28.1.tgz",
3568
+ "integrity": "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw==",
3569
+ "dev": true,
3570
+ "hasInstallScript": true,
3571
+ "license": "MIT",
3572
+ "bin": {
3573
+ "esbuild": "bin/esbuild"
3574
+ },
3575
+ "engines": {
3576
+ "node": ">=18"
3577
+ },
3578
+ "optionalDependencies": {
3579
+ "@esbuild/aix-ppc64": "0.28.1",
3580
+ "@esbuild/android-arm": "0.28.1",
3581
+ "@esbuild/android-arm64": "0.28.1",
3582
+ "@esbuild/android-x64": "0.28.1",
3583
+ "@esbuild/darwin-arm64": "0.28.1",
3584
+ "@esbuild/darwin-x64": "0.28.1",
3585
+ "@esbuild/freebsd-arm64": "0.28.1",
3586
+ "@esbuild/freebsd-x64": "0.28.1",
3587
+ "@esbuild/linux-arm": "0.28.1",
3588
+ "@esbuild/linux-arm64": "0.28.1",
3589
+ "@esbuild/linux-ia32": "0.28.1",
3590
+ "@esbuild/linux-loong64": "0.28.1",
3591
+ "@esbuild/linux-mips64el": "0.28.1",
3592
+ "@esbuild/linux-ppc64": "0.28.1",
3593
+ "@esbuild/linux-riscv64": "0.28.1",
3594
+ "@esbuild/linux-s390x": "0.28.1",
3595
+ "@esbuild/linux-x64": "0.28.1",
3596
+ "@esbuild/netbsd-arm64": "0.28.1",
3597
+ "@esbuild/netbsd-x64": "0.28.1",
3598
+ "@esbuild/openbsd-arm64": "0.28.1",
3599
+ "@esbuild/openbsd-x64": "0.28.1",
3600
+ "@esbuild/openharmony-arm64": "0.28.1",
3601
+ "@esbuild/sunos-x64": "0.28.1",
3602
+ "@esbuild/win32-arm64": "0.28.1",
3603
+ "@esbuild/win32-ia32": "0.28.1",
3604
+ "@esbuild/win32-x64": "0.28.1"
3605
+ }
3606
+ },
3607
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/extend": {
3608
+ "version": "3.0.2",
3609
+ "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
3610
+ "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
3611
+ "dev": true,
3612
+ "license": "MIT"
3613
+ },
3614
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/fast-sha256": {
3615
+ "version": "1.3.0",
3616
+ "resolved": "https://registry.npmjs.org/fast-sha256/-/fast-sha256-1.3.0.tgz",
3617
+ "integrity": "sha512-n11RGP/lrWEFI/bWdygLxhI+pVeo1ZYIVwvvPkW7azl/rOy+F3HYRZ2K5zeE9mmkhQppyv9sQFx0JM9UabnpPQ==",
3618
+ "dev": true,
3619
+ "license": "Unlicense"
3620
+ },
3621
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/fast-xml-builder": {
3622
+ "version": "1.2.0",
3623
+ "resolved": "https://registry.npmjs.org/fast-xml-builder/-/fast-xml-builder-1.2.0.tgz",
3624
+ "integrity": "sha512-00aAWieqff+ZJhsXA4g1g7M8k+7AYoMUUHF+/zFb5U6Uv/P0Vl4QZo84/IcufzYalLuEj9928bXN9PbbFzMF0Q==",
3625
+ "dev": true,
3626
+ "funding": [
3627
+ {
3628
+ "type": "github",
3629
+ "url": "https://github.com/sponsors/NaturalIntelligence"
3630
+ }
3631
+ ],
3632
+ "license": "MIT",
3633
+ "dependencies": {
3634
+ "path-expression-matcher": "^1.5.0",
3635
+ "xml-naming": "^0.1.0"
3636
+ }
3637
+ },
3638
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/fast-xml-parser": {
3639
+ "version": "5.7.3",
3640
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-5.7.3.tgz",
3641
+ "integrity": "sha512-C0AaNuC+mscy6vrAQKAc/rMq+zAPHodfHGZu4sGVehvAQt/JLG1O5zEcYcXSY5zSqr4YVgxsB+pHXTq0i7eDlg==",
3642
+ "dev": true,
3643
+ "funding": [
3644
+ {
3645
+ "type": "github",
3646
+ "url": "https://github.com/sponsors/NaturalIntelligence"
3647
+ }
3648
+ ],
3649
+ "license": "MIT",
3650
+ "dependencies": {
3651
+ "@nodable/entities": "^2.1.0",
3652
+ "fast-xml-builder": "^1.1.7",
3653
+ "path-expression-matcher": "^1.5.0",
3654
+ "strnum": "^2.2.3"
3655
+ },
3656
+ "bin": {
3657
+ "fxparser": "src/cli/cli.js"
3658
+ }
3659
+ },
3660
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/fetch-blob": {
3661
+ "version": "3.2.0",
3662
+ "resolved": "https://registry.npmjs.org/fetch-blob/-/fetch-blob-3.2.0.tgz",
3663
+ "integrity": "sha512-7yAQpD2UMJzLi1Dqv7qFYnPbaPx7ZfFK6PiIxQ4PfkGPyNyl2Ugx+a/umUonmKqjhM4DnfbMvdX6otXq83soQQ==",
3664
+ "dev": true,
3665
+ "funding": [
3666
+ {
3667
+ "type": "github",
3668
+ "url": "https://github.com/sponsors/jimmywarting"
3669
+ },
3670
+ {
3671
+ "type": "paypal",
3672
+ "url": "https://paypal.me/jimmywarting"
3673
+ }
3674
+ ],
3675
+ "license": "MIT",
3676
+ "dependencies": {
3677
+ "node-domexception": "^1.0.0",
3678
+ "web-streams-polyfill": "^3.0.3"
3679
+ },
3680
+ "engines": {
3681
+ "node": "^12.20 || >= 14.13"
3682
+ }
3683
+ },
3684
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/formdata-polyfill": {
3685
+ "version": "4.0.10",
3686
+ "resolved": "https://registry.npmjs.org/formdata-polyfill/-/formdata-polyfill-4.0.10.tgz",
3687
+ "integrity": "sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==",
3688
+ "dev": true,
3689
+ "license": "MIT",
3690
+ "dependencies": {
3691
+ "fetch-blob": "^3.1.2"
3692
+ },
3693
+ "engines": {
3694
+ "node": ">=12.20.0"
3695
+ }
3696
+ },
3697
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/gaxios": {
3698
+ "version": "7.1.4",
3699
+ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-7.1.4.tgz",
3700
+ "integrity": "sha512-bTIgTsM2bWn3XklZISBTQX7ZSddGW+IO3bMdGaemHZ3tbqExMENHLx6kKZ/KlejgrMtj8q7wBItt51yegqalrA==",
3701
+ "dev": true,
3702
+ "license": "Apache-2.0",
3703
+ "dependencies": {
3704
+ "extend": "^3.0.2",
3705
+ "https-proxy-agent": "^7.0.1",
3706
+ "node-fetch": "^3.3.2"
3707
+ },
3708
+ "engines": {
3709
+ "node": ">=18"
3710
+ }
3711
+ },
3712
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/gcp-metadata": {
3713
+ "version": "8.1.2",
3714
+ "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-8.1.2.tgz",
3715
+ "integrity": "sha512-zV/5HKTfCeKWnxG0Dmrw51hEWFGfcF2xiXqcA3+J90WDuP0SvoiSO5ORvcBsifmx/FoIjgQN3oNOGaQ5PhLFkg==",
3716
+ "dev": true,
3717
+ "license": "Apache-2.0",
3718
+ "dependencies": {
3719
+ "gaxios": "^7.0.0",
3720
+ "google-logging-utils": "^1.0.0",
3721
+ "json-bigint": "^1.0.0"
3722
+ },
3723
+ "engines": {
3724
+ "node": ">=18"
3725
+ }
3726
+ },
3727
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/get-east-asian-width": {
3728
+ "version": "1.6.0",
3729
+ "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.6.0.tgz",
3730
+ "integrity": "sha512-QRbvDIbx6YklUe6RxeTeleMR0yv3cYH6PsPZHcnVn7xv7zO1BHN8r0XETu8n6Ye3Q+ahtSarc3WgtNWmehIBfA==",
3731
+ "dev": true,
3732
+ "license": "MIT",
3733
+ "engines": {
3734
+ "node": ">=18"
3735
+ },
3736
+ "funding": {
3737
+ "url": "https://github.com/sponsors/sindresorhus"
3738
+ }
3739
+ },
3740
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/google-auth-library": {
3741
+ "version": "10.6.2",
3742
+ "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-10.6.2.tgz",
3743
+ "integrity": "sha512-e27Z6EThmVNNvtYASwQxose/G57rkRuaRbQyxM2bvYLLX/GqWZ5chWq2EBoUchJbCc57eC9ArzO5wMsEmWftCw==",
3744
+ "dev": true,
3745
+ "license": "Apache-2.0",
3746
+ "dependencies": {
3747
+ "base64-js": "^1.3.0",
3748
+ "ecdsa-sig-formatter": "^1.0.11",
3749
+ "gaxios": "^7.1.4",
3750
+ "gcp-metadata": "8.1.2",
3751
+ "google-logging-utils": "1.1.3",
3752
+ "jws": "^4.0.0"
3753
+ },
3754
+ "engines": {
3755
+ "node": ">=18"
3756
+ }
3757
+ },
3758
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/google-logging-utils": {
3759
+ "version": "1.1.3",
3760
+ "resolved": "https://registry.npmjs.org/google-logging-utils/-/google-logging-utils-1.1.3.tgz",
3761
+ "integrity": "sha512-eAmLkjDjAFCVXg7A1unxHsLf961m6y17QFqXqAXGj/gVkKFrEICfStRfwUlGNfeCEjNRa32JEWOUTlYXPyyKvA==",
3762
+ "dev": true,
3763
+ "license": "Apache-2.0",
3764
+ "engines": {
3765
+ "node": ">=14"
3766
+ }
3767
+ },
3768
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/graceful-fs": {
3769
+ "version": "4.2.11",
3770
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
3771
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
3772
+ "dev": true,
3773
+ "license": "ISC"
3774
+ },
3775
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/grok-mermaid": {
3776
+ "version": "0.2.2",
3777
+ "resolved": "https://registry.npmjs.org/grok-mermaid/-/grok-mermaid-0.2.2.tgz",
3778
+ "integrity": "sha512-XcJEP5dDC8liHBh52mlLjU18fNvu1ckFsu0QpIG3+APZ270fsj9wxpiA6cOURmbUEuoMVgjbC2+UYgTdCqqgzA==",
3779
+ "dev": true,
3780
+ "license": "Apache-2.0",
3781
+ "engines": {
3782
+ "node": ">=18"
3783
+ }
3784
+ },
3785
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/highlight.js": {
3786
+ "version": "10.7.3",
3787
+ "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz",
3788
+ "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==",
3789
+ "dev": true,
3790
+ "license": "BSD-3-Clause",
3791
+ "engines": {
3792
+ "node": "*"
3793
+ }
3794
+ },
3795
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/hosted-git-info": {
3796
+ "version": "9.0.3",
3797
+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-9.0.3.tgz",
3798
+ "integrity": "sha512-Hc+ghLoSt6QaYZUv0WBiIvmMDZuZZ7oaDvdH8MbfOO4lOsxdXLEvuC6ePoGs9H1X9oCLyq6+NVN0MKqD+ydxyg==",
3799
+ "dev": true,
3800
+ "license": "ISC",
3801
+ "dependencies": {
3802
+ "lru-cache": "^11.1.0"
3803
+ },
3804
+ "engines": {
3805
+ "node": "^20.17.0 || >=22.9.0"
3806
+ }
3807
+ },
3808
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/http-proxy-agent": {
3809
+ "version": "7.0.2",
3810
+ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz",
3811
+ "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==",
3812
+ "dev": true,
3813
+ "license": "MIT",
3814
+ "dependencies": {
3815
+ "agent-base": "^7.1.0",
3816
+ "debug": "^4.3.4"
3817
+ },
3818
+ "engines": {
3819
+ "node": ">= 14"
3820
+ }
3821
+ },
3822
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/https-proxy-agent": {
3823
+ "version": "7.0.6",
3824
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz",
3825
+ "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==",
3826
+ "dev": true,
3827
+ "license": "MIT",
3828
+ "dependencies": {
3829
+ "agent-base": "^7.1.2",
3830
+ "debug": "4"
3831
+ },
3832
+ "engines": {
3833
+ "node": ">= 14"
3834
+ }
3835
+ },
3836
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ignore": {
3837
+ "version": "7.0.5",
3838
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-7.0.5.tgz",
3839
+ "integrity": "sha512-Hs59xBNfUIunMFgWAbGX5cq6893IbWg4KnrjbYwX3tx0ztorVgTDA6B2sxf8ejHJ4wz8BqGUMYlnzNBer5NvGg==",
3840
+ "dev": true,
3841
+ "license": "MIT",
3842
+ "engines": {
3843
+ "node": ">= 4"
3844
+ }
3845
+ },
3846
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/isexe": {
3847
+ "version": "2.0.0",
3848
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
3849
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
3850
+ "dev": true,
3851
+ "license": "ISC"
3852
+ },
3853
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/jiti": {
3854
+ "version": "2.7.0",
3855
+ "resolved": "https://registry.npmjs.org/jiti/-/jiti-2.7.0.tgz",
3856
+ "integrity": "sha512-AC/7JofJvZGrrneWNaEnJeOLUx+JlGt7tNa0wZiRPT4MY1wmfKjt2+6O2p2uz2+skll8OZZmJMNqeke7kKbNgQ==",
3857
+ "dev": true,
3858
+ "license": "MIT",
3859
+ "bin": {
3860
+ "jiti": "lib/jiti-cli.mjs"
3861
+ }
3862
+ },
3863
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/json-bigint": {
3864
+ "version": "1.0.0",
3865
+ "resolved": "https://registry.npmjs.org/json-bigint/-/json-bigint-1.0.0.tgz",
3866
+ "integrity": "sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==",
3867
+ "dev": true,
3868
+ "license": "MIT",
3869
+ "dependencies": {
3870
+ "bignumber.js": "^9.0.0"
3871
+ }
3872
+ },
3873
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/json-schema-to-ts": {
3874
+ "version": "3.1.1",
3875
+ "resolved": "https://registry.npmjs.org/json-schema-to-ts/-/json-schema-to-ts-3.1.1.tgz",
3876
+ "integrity": "sha512-+DWg8jCJG2TEnpy7kOm/7/AxaYoaRbjVB4LFZLySZlWn8exGs3A4OLJR966cVvU26N7X9TWxl+Jsw7dzAqKT6g==",
3877
+ "dev": true,
3878
+ "license": "MIT",
3879
+ "dependencies": {
3880
+ "@babel/runtime": "^7.18.3",
3881
+ "ts-algebra": "^2.0.0"
3882
+ },
3883
+ "engines": {
3884
+ "node": ">=16"
3885
+ }
3886
+ },
3887
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/jwa": {
3888
+ "version": "2.0.1",
3889
+ "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.1.tgz",
3890
+ "integrity": "sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg==",
3891
+ "dev": true,
3892
+ "license": "MIT",
3893
+ "dependencies": {
3894
+ "buffer-equal-constant-time": "^1.0.1",
3895
+ "ecdsa-sig-formatter": "1.0.11",
3896
+ "safe-buffer": "^5.0.1"
3897
+ }
3898
+ },
3899
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/jws": {
3900
+ "version": "4.0.1",
3901
+ "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.1.tgz",
3902
+ "integrity": "sha512-EKI/M/yqPncGUUh44xz0PxSidXFr/+r0pA70+gIYhjv+et7yxM+s29Y+VGDkovRofQem0fs7Uvf4+YmAdyRduA==",
3903
+ "dev": true,
3904
+ "license": "MIT",
3905
+ "dependencies": {
3906
+ "jwa": "^2.0.1",
3907
+ "safe-buffer": "^5.0.1"
3908
+ }
3909
+ },
3910
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/long": {
3911
+ "version": "5.3.2",
3912
+ "resolved": "https://registry.npmjs.org/long/-/long-5.3.2.tgz",
3913
+ "integrity": "sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA==",
3914
+ "dev": true,
3915
+ "license": "Apache-2.0"
3916
+ },
3917
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/lru-cache": {
3918
+ "version": "11.4.0",
3919
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.4.0.tgz",
3920
+ "integrity": "sha512-W+R+kFL4HgVxONq2bhXPi3bGpzGe/yEhVOp233qw9wCRtgncJ15P3bC+e4zZMu4Cq7d+WAJjXGW0uUkifhcatA==",
3921
+ "dev": true,
3922
+ "license": "BlueOak-1.0.0",
3923
+ "engines": {
3924
+ "node": "20 || >=22"
3925
+ }
3926
+ },
3927
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/marked": {
3928
+ "version": "18.0.5",
3929
+ "resolved": "https://registry.npmjs.org/marked/-/marked-18.0.5.tgz",
3930
+ "integrity": "sha512-S6GcvALHg6K4ohtu4E7x0a1AqhAjp6cV8KhLSyN9qVapnzJkusVBxZRcIU9AeYsbe6P1hKDusSbEOzGyyuce6w==",
3931
+ "dev": true,
3932
+ "license": "MIT",
3933
+ "bin": {
3934
+ "marked": "bin/marked.js"
3935
+ },
3936
+ "engines": {
3937
+ "node": ">= 20"
3938
+ }
3939
+ },
3940
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/minimatch": {
3941
+ "version": "10.2.5",
3942
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.2.5.tgz",
3943
+ "integrity": "sha512-MULkVLfKGYDFYejP07QOurDLLQpcjk7Fw+7jXS2R2czRQzR56yHRveU5NDJEOviH+hETZKSkIk5c+T23GjFUMg==",
3944
+ "dev": true,
3945
+ "license": "BlueOak-1.0.0",
3946
+ "dependencies": {
3947
+ "brace-expansion": "^5.0.5"
3948
+ },
3949
+ "engines": {
3950
+ "node": "18 || 20 || >=22"
3951
+ },
3952
+ "funding": {
3953
+ "url": "https://github.com/sponsors/isaacs"
3954
+ }
3955
+ },
3956
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ms": {
3957
+ "version": "2.1.3",
3958
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
3959
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
3960
+ "dev": true,
3961
+ "license": "MIT"
3962
+ },
3963
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/node-domexception": {
3964
+ "version": "1.0.0",
3965
+ "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz",
3966
+ "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==",
3967
+ "deprecated": "Use your platform's native DOMException instead",
3968
+ "dev": true,
3969
+ "funding": [
3970
+ {
3971
+ "type": "github",
3972
+ "url": "https://github.com/sponsors/jimmywarting"
3973
+ },
3974
+ {
3975
+ "type": "github",
3976
+ "url": "https://paypal.me/jimmywarting"
3977
+ }
3978
+ ],
3979
+ "license": "MIT",
3980
+ "engines": {
3981
+ "node": ">=10.5.0"
3982
+ }
3983
+ },
3984
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/node-fetch": {
3985
+ "version": "3.3.2",
3986
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.3.2.tgz",
3987
+ "integrity": "sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA==",
3988
+ "dev": true,
3989
+ "license": "MIT",
3990
+ "dependencies": {
3991
+ "data-uri-to-buffer": "^4.0.0",
3992
+ "fetch-blob": "^3.1.4",
3993
+ "formdata-polyfill": "^4.0.10"
3994
+ },
3995
+ "engines": {
3996
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
3997
+ },
3998
+ "funding": {
3999
+ "type": "opencollective",
4000
+ "url": "https://opencollective.com/node-fetch"
4001
+ }
4002
+ },
4003
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/openai": {
4004
+ "version": "6.40.0",
4005
+ "resolved": "https://registry.npmjs.org/openai/-/openai-6.40.0.tgz",
4006
+ "integrity": "sha512-MWtTjd/gQt4jpbji61NTgFWJLoY/PdRJ6wG9/ZDRMYNMlBKrCrSlkLI+KgHP1vR1qT6LKSAyAqIxno6lcK9JiA==",
4007
+ "dev": true,
4008
+ "license": "Apache-2.0",
4009
+ "peerDependencies": {
4010
+ "ws": "^8.18.0",
4011
+ "zod": "^3.25 || ^4.0"
4012
+ },
4013
+ "peerDependenciesMeta": {
4014
+ "ws": {
4015
+ "optional": true
4016
+ },
4017
+ "zod": {
4018
+ "optional": true
4019
+ }
4020
+ }
4021
+ },
4022
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/p-retry": {
4023
+ "version": "4.6.2",
4024
+ "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz",
4025
+ "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==",
4026
+ "dev": true,
4027
+ "license": "MIT",
4028
+ "dependencies": {
4029
+ "@types/retry": "0.12.0",
4030
+ "retry": "^0.13.1"
4031
+ },
4032
+ "engines": {
4033
+ "node": ">=8"
4034
+ }
4035
+ },
4036
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/p-retry/node_modules/@types/retry": {
4037
+ "version": "0.12.0",
4038
+ "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz",
4039
+ "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==",
4040
+ "dev": true,
4041
+ "license": "MIT"
4042
+ },
4043
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/partial-json": {
4044
+ "version": "0.1.7",
4045
+ "resolved": "https://registry.npmjs.org/partial-json/-/partial-json-0.1.7.tgz",
4046
+ "integrity": "sha512-Njv/59hHaokb/hRUjce3Hdv12wd60MtM9Z5Olmn+nehe0QDAsRtRbJPvJ0Z91TusF0SuZRIvnM+S4l6EIP8leA==",
4047
+ "dev": true,
4048
+ "license": "MIT"
4049
+ },
4050
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/path-expression-matcher": {
4051
+ "version": "1.5.0",
4052
+ "resolved": "https://registry.npmjs.org/path-expression-matcher/-/path-expression-matcher-1.5.0.tgz",
4053
+ "integrity": "sha512-cbrerZV+6rvdQrrD+iGMcZFEiiSrbv9Tfdkvnusy6y0x0GKBXREFg/Y65GhIfm0tnLntThhzCnfKwp1WRjeCyQ==",
4054
+ "dev": true,
4055
+ "funding": [
4056
+ {
4057
+ "type": "github",
4058
+ "url": "https://github.com/sponsors/NaturalIntelligence"
4059
+ }
4060
+ ],
4061
+ "license": "MIT",
4062
+ "engines": {
4063
+ "node": ">=14.0.0"
4064
+ }
4065
+ },
4066
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/path-key": {
4067
+ "version": "3.1.1",
4068
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
4069
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
4070
+ "dev": true,
4071
+ "license": "MIT",
4072
+ "engines": {
4073
+ "node": ">=8"
4074
+ }
4075
+ },
4076
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/proper-lockfile": {
4077
+ "version": "4.1.2",
4078
+ "resolved": "https://registry.npmjs.org/proper-lockfile/-/proper-lockfile-4.1.2.tgz",
4079
+ "integrity": "sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA==",
4080
+ "dev": true,
4081
+ "license": "MIT",
4082
+ "dependencies": {
4083
+ "graceful-fs": "^4.2.4",
4084
+ "retry": "^0.12.0",
4085
+ "signal-exit": "^3.0.2"
4086
+ }
4087
+ },
4088
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/proper-lockfile/node_modules/retry": {
4089
+ "version": "0.12.0",
4090
+ "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
4091
+ "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==",
4092
+ "dev": true,
4093
+ "license": "MIT",
4094
+ "engines": {
4095
+ "node": ">= 4"
4096
+ }
4097
+ },
4098
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/protobufjs": {
4099
+ "version": "7.6.5",
4100
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.6.5.tgz",
4101
+ "integrity": "sha512-/FPD0nUc9jH6rfFjji9IBqOz4pcSE3CsT1m7Ep6Mdb0LxSUMj8hgl6GomOvZzpNpAqqGaXA0P3VSrZLFzIhQrw==",
4102
+ "dev": true,
4103
+ "hasInstallScript": true,
4104
+ "license": "BSD-3-Clause",
4105
+ "dependencies": {
4106
+ "@protobufjs/aspromise": "^1.1.2",
4107
+ "@protobufjs/base64": "^1.1.2",
4108
+ "@protobufjs/codegen": "^2.0.5",
4109
+ "@protobufjs/eventemitter": "^1.1.1",
4110
+ "@protobufjs/fetch": "^1.1.1",
4111
+ "@protobufjs/float": "^1.0.2",
4112
+ "@protobufjs/path": "^1.1.2",
4113
+ "@protobufjs/pool": "^1.1.0",
4114
+ "@protobufjs/utf8": "^1.1.1",
4115
+ "@types/node": ">=13.7.0",
4116
+ "long": "^5.3.2"
4117
+ },
4118
+ "engines": {
4119
+ "node": ">=12.0.0"
4120
+ }
4121
+ },
4122
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/retry": {
4123
+ "version": "0.13.1",
4124
+ "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz",
4125
+ "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==",
4126
+ "dev": true,
4127
+ "license": "MIT",
4128
+ "engines": {
4129
+ "node": ">= 4"
4130
+ }
4131
+ },
4132
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/safe-buffer": {
4133
+ "version": "5.2.1",
4134
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
4135
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
4136
+ "dev": true,
4137
+ "funding": [
4138
+ {
4139
+ "type": "github",
4140
+ "url": "https://github.com/sponsors/feross"
4141
+ },
4142
+ {
4143
+ "type": "patreon",
4144
+ "url": "https://www.patreon.com/feross"
4145
+ },
4146
+ {
4147
+ "type": "consulting",
4148
+ "url": "https://feross.org/support"
4149
+ }
4150
+ ],
4151
+ "license": "MIT"
4152
+ },
4153
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/semver": {
4154
+ "version": "7.8.0",
4155
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.8.0.tgz",
4156
+ "integrity": "sha512-AcM7dV/5ul4EekoQ29Agm5vri8JNqRyj39o0qpX6vDF2GZrtutZl5RwgD1XnZjiTAfncsJhMI48QQH3sN87YNA==",
4157
+ "dev": true,
4158
+ "license": "ISC",
4159
+ "bin": {
4160
+ "semver": "bin/semver.js"
4161
+ },
1806
4162
  "engines": {
1807
- "node": ">=16"
4163
+ "node": ">=10"
1808
4164
  }
1809
4165
  },
1810
- "node_modules/@cloudflare/workerd-linux-arm64": {
1811
- "version": "1.20260815.1",
1812
- "resolved": "https://registry.npmjs.org/@cloudflare/workerd-linux-arm64/-/workerd-linux-arm64-1.20260815.1.tgz",
1813
- "integrity": "sha512-XNFtJ5rIqJxnY6ISjkfbhT/ODiWJ6LcBvNbntuPD6I/F2k7aZeKgPaXrvWvKde66LXyzFKzc8Hn+Ydx4shevQg==",
1814
- "cpu": [
1815
- "arm64"
1816
- ],
4166
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/shebang-command": {
4167
+ "version": "2.0.0",
4168
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
4169
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
1817
4170
  "dev": true,
1818
- "license": "Apache-2.0",
1819
- "optional": true,
1820
- "os": [
1821
- "linux"
1822
- ],
4171
+ "license": "MIT",
4172
+ "dependencies": {
4173
+ "shebang-regex": "^3.0.0"
4174
+ },
1823
4175
  "engines": {
1824
- "node": ">=16"
4176
+ "node": ">=8"
1825
4177
  }
1826
4178
  },
1827
- "node_modules/@cloudflare/workerd-windows-64": {
1828
- "version": "1.20260815.1",
1829
- "resolved": "https://registry.npmjs.org/@cloudflare/workerd-windows-64/-/workerd-windows-64-1.20260815.1.tgz",
1830
- "integrity": "sha512-PiIUWrhbMg3quolwjgMvPOd75vKESjT4aDm7nL6mSjL5IOgmpO/zKstXnYfnEH3pq7sC0UCvKlF8ZPcfsh8NMw==",
1831
- "cpu": [
1832
- "x64"
1833
- ],
4179
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/shebang-regex": {
4180
+ "version": "3.0.0",
4181
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
4182
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
1834
4183
  "dev": true,
1835
- "license": "Apache-2.0",
1836
- "optional": true,
1837
- "os": [
1838
- "win32"
1839
- ],
4184
+ "license": "MIT",
1840
4185
  "engines": {
1841
- "node": ">=16"
4186
+ "node": ">=8"
1842
4187
  }
1843
4188
  },
1844
- "node_modules/@cloudflare/workers-types": {
1845
- "version": "5.20260907.1",
1846
- "resolved": "https://registry.npmjs.org/@cloudflare/workers-types/-/workers-types-5.20260907.1.tgz",
1847
- "integrity": "sha512-HYI7eFb/MOcNzvbUW7ZwHVZL5YFXb4r6yHN3vx8gJCqde7yhn3bhuPKiQPw90UtGWWp7uOI+Que3kf8Svjn5cw==",
4189
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/signal-exit": {
4190
+ "version": "3.0.7",
4191
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
4192
+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
1848
4193
  "dev": true,
1849
- "license": "MIT OR Apache-2.0"
4194
+ "license": "ISC"
1850
4195
  },
1851
- "node_modules/@connectrpc/connect": {
1852
- "version": "2.2.0",
1853
- "resolved": "https://registry.npmjs.org/@connectrpc/connect/-/connect-2.2.0.tgz",
1854
- "integrity": "sha512-M63OQ1ZFcPUm85CuewJ9G9CMV8LjzGR9935xOnXNQGSazAbwMb3x2W7vXBYM1zqrP7XFD8uxp/dUAhirclgwnQ==",
1855
- "license": "Apache-2.0",
1856
- "peerDependencies": {
1857
- "@bufbuild/protobuf": "^2.7.0"
4196
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/standardwebhooks": {
4197
+ "version": "1.1.1",
4198
+ "resolved": "https://registry.npmjs.org/standardwebhooks/-/standardwebhooks-1.1.1.tgz",
4199
+ "integrity": "sha512-bCbX9ZEyFkWPsRz7Bl3NuQUJohmwGSev/yhr7vhaGPlc4AfIrspIRa6cPTBuI1ItmrTDJ4d/S2hCsfe4+vQGnQ==",
4200
+ "dev": true,
4201
+ "license": "MIT",
4202
+ "dependencies": {
4203
+ "@stablelib/base64": "^1.0.0",
4204
+ "fast-sha256": "^1.3.0"
1858
4205
  }
1859
4206
  },
1860
- "node_modules/@connectrpc/connect-web": {
1861
- "version": "2.2.0",
1862
- "resolved": "https://registry.npmjs.org/@connectrpc/connect-web/-/connect-web-2.2.0.tgz",
1863
- "integrity": "sha512-uuBUcBTYfb/r1o98LzCCZk1H90yx0vmZ5m21dpw/q4EUwsKwkCDGI8H0aEdjcZld+Q2jJ5A5ADvPqfb6lzQ/sg==",
1864
- "license": "Apache-2.0",
1865
- "peerDependencies": {
1866
- "@bufbuild/protobuf": "^2.7.0",
1867
- "@connectrpc/connect": "2.2.0"
1868
- }
4207
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/strnum": {
4208
+ "version": "2.3.0",
4209
+ "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.3.0.tgz",
4210
+ "integrity": "sha512-ums3KNd42PGyx5xaoVTO1mjU1bH3NpY4vsrVlnv9PNGqQj8wd7rJ6nEypLrJ7z5vxK5RP0yMLo6J/Gsm62DI5Q==",
4211
+ "dev": true,
4212
+ "funding": [
4213
+ {
4214
+ "type": "github",
4215
+ "url": "https://github.com/sponsors/NaturalIntelligence"
4216
+ }
4217
+ ],
4218
+ "license": "MIT"
1869
4219
  },
1870
- "node_modules/@coreplane/switchboard": {
1871
- "resolved": "packages/switchboard",
1872
- "link": true
4220
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ts-algebra": {
4221
+ "version": "2.0.0",
4222
+ "resolved": "https://registry.npmjs.org/ts-algebra/-/ts-algebra-2.0.0.tgz",
4223
+ "integrity": "sha512-FPAhNPFMrkwz76P7cdjdmiShwMynZYN6SgOujD1urY4oNm80Ou9oMdmbR45LotcKOXoy7wSmHkRFE6Mxbrhefw==",
4224
+ "dev": true,
4225
+ "license": "MIT"
1873
4226
  },
1874
- "node_modules/@cspotcode/source-map-support": {
1875
- "version": "0.8.1",
1876
- "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
1877
- "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
4227
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/tslib": {
4228
+ "version": "2.8.1",
4229
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
4230
+ "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
1878
4231
  "dev": true,
1879
- "license": "MIT",
1880
- "dependencies": {
1881
- "@jridgewell/trace-mapping": "0.3.9"
1882
- },
1883
- "engines": {
1884
- "node": ">=12"
1885
- }
4232
+ "license": "0BSD"
1886
4233
  },
1887
- "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": {
1888
- "version": "0.3.9",
1889
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
1890
- "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
4234
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/typebox": {
4235
+ "version": "1.3.7",
4236
+ "resolved": "https://registry.npmjs.org/typebox/-/typebox-1.3.7.tgz",
4237
+ "integrity": "sha512-meKuifc33Pccx0O6PdIzYMq3Og8zvP4TIi/a+Bw3AEMZMxOD0+RHGQvpglEe6Zdy3wZ8nqn/j95h8LUZLk/6Hg==",
4238
+ "dev": true,
4239
+ "license": "MIT"
4240
+ },
4241
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/undici": {
4242
+ "version": "8.9.0",
4243
+ "resolved": "https://registry.npmjs.org/undici/-/undici-8.9.0.tgz",
4244
+ "integrity": "sha512-aWZpUj7XoGonMClx4gdDRfgBjqeA+F473aDmROQQbM9n6PRfK/u1q/a0X4wMTgcHfT8H6fpbt98PFuDUwFg2YA==",
1891
4245
  "dev": true,
1892
4246
  "license": "MIT",
1893
- "dependencies": {
1894
- "@jridgewell/resolve-uri": "^3.0.3",
1895
- "@jridgewell/sourcemap-codec": "^1.4.10"
4247
+ "engines": {
4248
+ "node": ">=22.19.0"
1896
4249
  }
1897
4250
  },
1898
- "node_modules/@docsearch/css": {
1899
- "version": "3.8.2",
1900
- "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.8.2.tgz",
1901
- "integrity": "sha512-y05ayQFyUmCXze79+56v/4HpycYF3uFqB78pLPrSV5ZKAlDuIAAJNhaRi8tTdRNXh05yxX/TyNnzD6LwSM89vQ==",
4251
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/undici-types": {
4252
+ "version": "6.21.0",
4253
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
4254
+ "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
1902
4255
  "dev": true,
1903
4256
  "license": "MIT"
1904
4257
  },
1905
- "node_modules/@docsearch/js": {
1906
- "version": "3.8.2",
1907
- "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.8.2.tgz",
1908
- "integrity": "sha512-Q5wY66qHn0SwA7Taa0aDbHiJvaFJLOJyHmooQ7y8hlwwQLQ/5WwCcoX0g7ii04Qi2DJlHsd0XXzJ8Ypw9+9YmQ==",
4258
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/web-streams-polyfill": {
4259
+ "version": "3.3.3",
4260
+ "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.3.3.tgz",
4261
+ "integrity": "sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==",
1909
4262
  "dev": true,
1910
4263
  "license": "MIT",
4264
+ "engines": {
4265
+ "node": ">= 8"
4266
+ }
4267
+ },
4268
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/which": {
4269
+ "version": "2.0.2",
4270
+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
4271
+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
4272
+ "dev": true,
4273
+ "license": "ISC",
1911
4274
  "dependencies": {
1912
- "@docsearch/react": "3.8.2",
1913
- "preact": "^10.0.0"
4275
+ "isexe": "^2.0.0"
4276
+ },
4277
+ "bin": {
4278
+ "node-which": "bin/node-which"
4279
+ },
4280
+ "engines": {
4281
+ "node": ">= 8"
1914
4282
  }
1915
4283
  },
1916
- "node_modules/@docsearch/react": {
1917
- "version": "3.8.2",
1918
- "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.8.2.tgz",
1919
- "integrity": "sha512-xCRrJQlTt8N9GU0DG4ptwHRkfnSnD/YpdeaXe02iKfqs97TkZJv60yE+1eq/tjPcVnTW8dP5qLP7itifFVV5eg==",
4284
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/ws": {
4285
+ "version": "8.21.0",
4286
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.21.0.tgz",
4287
+ "integrity": "sha512-Vsp28b7DRcimFQvrqu2Wek3z1iYxDCWqHYB8Qsnk/S4RfaCQzPGPyBNuVjJV3cd6UiKtUtp6sNM77gWvzcCH+g==",
1920
4288
  "dev": true,
1921
4289
  "license": "MIT",
1922
- "dependencies": {
1923
- "@algolia/autocomplete-core": "1.17.7",
1924
- "@algolia/autocomplete-preset-algolia": "1.17.7",
1925
- "@docsearch/css": "3.8.2",
1926
- "algoliasearch": "^5.14.2"
4290
+ "engines": {
4291
+ "node": ">=10.0.0"
1927
4292
  },
1928
4293
  "peerDependencies": {
1929
- "@types/react": ">= 16.8.0 < 19.0.0",
1930
- "react": ">= 16.8.0 < 19.0.0",
1931
- "react-dom": ">= 16.8.0 < 19.0.0",
1932
- "search-insights": ">= 1 < 3"
4294
+ "bufferutil": "^4.0.1",
4295
+ "utf-8-validate": ">=5.0.2"
1933
4296
  },
1934
4297
  "peerDependenciesMeta": {
1935
- "@types/react": {
1936
- "optional": true
1937
- },
1938
- "react": {
1939
- "optional": true
1940
- },
1941
- "react-dom": {
4298
+ "bufferutil": {
1942
4299
  "optional": true
1943
4300
  },
1944
- "search-insights": {
4301
+ "utf-8-validate": {
1945
4302
  "optional": true
1946
4303
  }
1947
4304
  }
1948
4305
  },
1949
- "node_modules/@earendil-works/pi-ai": {
1950
- "version": "0.85.1",
1951
- "resolved": "https://registry.npmjs.org/@earendil-works/pi-ai/-/pi-ai-0.85.1.tgz",
1952
- "integrity": "sha512-+VgVIJDkDO2efYJKEEqvPTH4zmnIaXdAppGbO+vKFA9qy5PdhFiAenuFAkU+oiCSfOC4dMHDyrjdQeL4ZoC5CQ==",
4306
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/xml-naming": {
4307
+ "version": "0.1.0",
4308
+ "resolved": "https://registry.npmjs.org/xml-naming/-/xml-naming-0.1.0.tgz",
4309
+ "integrity": "sha512-k8KO9hrMyNk6tUWqUfkTEZbezRRpONVOzUTnc97VnCvyj6Tf9lyUR9EDAIeiVLv56jsMcoXEwjW8Kv5yPY52lw==",
4310
+ "dev": true,
4311
+ "funding": [
4312
+ {
4313
+ "type": "github",
4314
+ "url": "https://github.com/sponsors/NaturalIntelligence"
4315
+ }
4316
+ ],
1953
4317
  "license": "MIT",
1954
- "dependencies": {
1955
- "@anthropic-ai/sdk": "0.123.0",
1956
- "@aws-sdk/client-bedrock-runtime": "3.1048.0",
1957
- "@earendil-works/pi-telemetry": "^0.85.1",
1958
- "@google/genai": "1.52.0",
1959
- "@smithy/node-http-handler": "4.7.3",
1960
- "http-proxy-agent": "7.0.2",
1961
- "https-proxy-agent": "7.0.6",
1962
- "openai": "6.40.0",
1963
- "partial-json": "0.1.7",
1964
- "typebox": "1.3.7"
1965
- },
1966
- "bin": {
1967
- "pi-ai": "dist/cli.js"
1968
- },
1969
4318
  "engines": {
1970
- "node": ">=22.19.0"
4319
+ "node": ">=16.0.0"
1971
4320
  }
1972
4321
  },
1973
- "node_modules/@earendil-works/pi-ai/node_modules/@anthropic-ai/sdk": {
1974
- "version": "0.123.0",
1975
- "resolved": "https://registry.npmjs.org/@anthropic-ai/sdk/-/sdk-0.123.0.tgz",
1976
- "integrity": "sha512-Y9oX9mPNGZClHQOFqrWRk43Srcu/UHuPq3rfxxOq7JgW0gi+lJA2MAOK4Ul3k/+AUrwRWFJvd0tK3oC0Pw25dw==",
1977
- "license": "MIT",
1978
- "dependencies": {
1979
- "json-schema-to-ts": "^3.1.1",
1980
- "standardwebhooks": "^1.0.0"
1981
- },
4322
+ "node_modules/@earendil-works/pi-coding-agent/node_modules/yaml": {
4323
+ "version": "2.9.0",
4324
+ "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.9.0.tgz",
4325
+ "integrity": "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA==",
4326
+ "dev": true,
4327
+ "license": "ISC",
1982
4328
  "bin": {
1983
- "anthropic-ai-sdk": "bin/cli"
4329
+ "yaml": "bin.mjs"
1984
4330
  },
1985
- "peerDependencies": {
1986
- "zod": "^3.25.0 || ^4.0.0"
4331
+ "engines": {
4332
+ "node": ">= 14.6"
1987
4333
  },
1988
- "peerDependenciesMeta": {
1989
- "zod": {
1990
- "optional": true
1991
- }
4334
+ "funding": {
4335
+ "url": "https://github.com/sponsors/eemeli"
1992
4336
  }
1993
4337
  },
1994
4338
  "node_modules/@earendil-works/pi-telemetry": {
@@ -7033,9 +9377,9 @@
7033
9377
  "license": "MIT"
7034
9378
  },
7035
9379
  "node_modules/@types/node": {
7036
- "version": "24.13.4",
7037
- "resolved": "https://registry.npmjs.org/@types/node/-/node-24.13.4.tgz",
7038
- "integrity": "sha512-YJ7EqCstVTzIr0fMr7qul/977en+pQHrfmuKIo6Zr9i75Be21dr3MovcfvGtyvi2HAUrRerWps5sMO9I7WaxDw==",
9380
+ "version": "24.13.5",
9381
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-24.13.5.tgz",
9382
+ "integrity": "sha512-TXyindR+lBr22aJIdMQzCFHPHR6cR4js838mRDCSz5hOKWZvZwsXSSiXDmjRj4iJmgl+sR9O+1mkoVBSMadNug==",
7039
9383
  "license": "MIT",
7040
9384
  "dependencies": {
7041
9385
  "undici-types": "~7.18.0"
@@ -17685,10 +20029,9 @@
17685
20029
  },
17686
20030
  "packages/switchboard": {
17687
20031
  "name": "@coreplane/switchboard",
17688
- "version": "1.227.0",
20032
+ "version": "1.229.0",
17689
20033
  "license": "Apache-2.0",
17690
20034
  "dependencies": {
17691
- "@anthropic-ai/sdk": "^0.124.0",
17692
20035
  "@earendil-works/pi-ai": "0.85.1",
17693
20036
  "@slack/bolt": "^5.1.0",
17694
20037
  "aws4fetch": "^1.0.20",
@@ -17739,19 +20082,6 @@
17739
20082
  "engines": {
17740
20083
  "node": ">=22"
17741
20084
  }
17742
- },
17743
- "web/node_modules/@types/node": {
17744
- "version": "26.5.0",
17745
- "dev": true,
17746
- "license": "MIT",
17747
- "dependencies": {
17748
- "undici-types": "~8.9.0"
17749
- }
17750
- },
17751
- "web/node_modules/undici-types": {
17752
- "version": "8.9.0",
17753
- "dev": true,
17754
- "license": "MIT"
17755
20085
  }
17756
20086
  }
17757
20087
  }