@koi-language/koi 1.0.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 (85) hide show
  1. package/QUICKSTART.md +89 -0
  2. package/README.md +545 -0
  3. package/examples/actions-demo.koi +177 -0
  4. package/examples/cache-test.koi +29 -0
  5. package/examples/calculator.koi +61 -0
  6. package/examples/clear-registry.js +33 -0
  7. package/examples/clear-registry.koi +30 -0
  8. package/examples/code-introspection-test.koi +149 -0
  9. package/examples/counter.koi +132 -0
  10. package/examples/delegation-test.koi +52 -0
  11. package/examples/directory-import-test.koi +84 -0
  12. package/examples/hello-world-claude.koi +52 -0
  13. package/examples/hello-world.koi +52 -0
  14. package/examples/hello.koi +24 -0
  15. package/examples/mcp-example.koi +70 -0
  16. package/examples/multi-event-handler-test.koi +144 -0
  17. package/examples/new-import-test.koi +89 -0
  18. package/examples/pipeline.koi +162 -0
  19. package/examples/registry-demo.koi +184 -0
  20. package/examples/registry-playbook-demo.koi +162 -0
  21. package/examples/registry-playbook-email-compositor-2.koi +140 -0
  22. package/examples/registry-playbook-email-compositor.koi +140 -0
  23. package/examples/sentiment.koi +90 -0
  24. package/examples/simple.koi +48 -0
  25. package/examples/skill-import-test.koi +76 -0
  26. package/examples/skills/advanced/index.koi +95 -0
  27. package/examples/skills/math-operations.koi +69 -0
  28. package/examples/skills/string-operations.koi +56 -0
  29. package/examples/task-chaining-demo.koi +244 -0
  30. package/examples/test-await.koi +22 -0
  31. package/examples/test-crypto-sha256.koi +196 -0
  32. package/examples/test-delegation.koi +41 -0
  33. package/examples/test-multi-team-routing.koi +258 -0
  34. package/examples/test-no-handler.koi +35 -0
  35. package/examples/test-npm-import.koi +67 -0
  36. package/examples/test-parse.koi +10 -0
  37. package/examples/test-peers-with-team.koi +59 -0
  38. package/examples/test-permissions-fail.koi +20 -0
  39. package/examples/test-permissions.koi +36 -0
  40. package/examples/test-simple-registry.koi +31 -0
  41. package/examples/test-typescript-import.koi +64 -0
  42. package/examples/test-uses-team-syntax.koi +25 -0
  43. package/examples/test-uses-team.koi +31 -0
  44. package/examples/utils/calculator.test.ts +144 -0
  45. package/examples/utils/calculator.ts +56 -0
  46. package/examples/utils/math-helpers.js +50 -0
  47. package/examples/utils/math-helpers.ts +55 -0
  48. package/examples/web-delegation-demo.koi +165 -0
  49. package/package.json +78 -0
  50. package/src/cli/koi.js +793 -0
  51. package/src/compiler/build-optimizer.js +447 -0
  52. package/src/compiler/cache-manager.js +274 -0
  53. package/src/compiler/import-resolver.js +369 -0
  54. package/src/compiler/parser.js +7542 -0
  55. package/src/compiler/transpiler.js +1105 -0
  56. package/src/compiler/typescript-transpiler.js +148 -0
  57. package/src/grammar/koi.pegjs +767 -0
  58. package/src/runtime/action-registry.js +172 -0
  59. package/src/runtime/actions/call-skill.js +45 -0
  60. package/src/runtime/actions/format.js +115 -0
  61. package/src/runtime/actions/print.js +42 -0
  62. package/src/runtime/actions/registry-delete.js +37 -0
  63. package/src/runtime/actions/registry-get.js +37 -0
  64. package/src/runtime/actions/registry-keys.js +33 -0
  65. package/src/runtime/actions/registry-search.js +34 -0
  66. package/src/runtime/actions/registry-set.js +50 -0
  67. package/src/runtime/actions/return.js +31 -0
  68. package/src/runtime/actions/send-message.js +58 -0
  69. package/src/runtime/actions/update-state.js +36 -0
  70. package/src/runtime/agent.js +1368 -0
  71. package/src/runtime/cli-logger.js +205 -0
  72. package/src/runtime/incremental-json-parser.js +201 -0
  73. package/src/runtime/index.js +33 -0
  74. package/src/runtime/llm-provider.js +1372 -0
  75. package/src/runtime/mcp-client.js +1171 -0
  76. package/src/runtime/planner.js +273 -0
  77. package/src/runtime/registry-backends/keyv-sqlite.js +215 -0
  78. package/src/runtime/registry-backends/local.js +260 -0
  79. package/src/runtime/registry.js +162 -0
  80. package/src/runtime/role.js +14 -0
  81. package/src/runtime/router.js +395 -0
  82. package/src/runtime/runtime.js +113 -0
  83. package/src/runtime/skill-selector.js +173 -0
  84. package/src/runtime/skill.js +25 -0
  85. package/src/runtime/team.js +162 -0
package/package.json ADDED
@@ -0,0 +1,78 @@
1
+ {
2
+ "name": "@koi-language/koi",
3
+ "version": "1.0.0",
4
+ "description": "Koi - Agent-first language. Calm orchestration.",
5
+ "type": "module",
6
+ "main": "src/runtime/index.js",
7
+ "exports": {
8
+ ".": "./src/runtime/index.js",
9
+ "./runtime": "./src/runtime/index.js",
10
+ "./router": "./src/runtime/router.js"
11
+ },
12
+ "bin": {
13
+ "koi": "./src/cli/koi.js"
14
+ },
15
+ "files": [
16
+ "src/",
17
+ "examples/",
18
+ "README.md",
19
+ "QUICKSTART.md",
20
+ "SETUP_LLM.md",
21
+ "LICENSE"
22
+ ],
23
+ "scripts": {
24
+ "build:grammar": "peggy --format es -o src/compiler/parser.js src/grammar/koi.pegjs",
25
+ "compile": "node src/cli/koi.js compile",
26
+ "run": "node src/cli/koi.js run",
27
+ "dev": "node --inspect src/cli/koi.js run",
28
+ "test": "node src/cli/koi.js test"
29
+ },
30
+ "keywords": [
31
+ "koi",
32
+ "agent-first",
33
+ "multi-agent",
34
+ "orchestration",
35
+ "transpiler",
36
+ "role-based",
37
+ "calm",
38
+ "llm",
39
+ "ai-agents",
40
+ "playbook",
41
+ "agent-orchestration"
42
+ ],
43
+ "author": "",
44
+ "license": "MIT",
45
+ "repository": {
46
+ "type": "git",
47
+ "url": "https://github.com/koi-language/Koi.git"
48
+ },
49
+ "bugs": {
50
+ "url": "https://github.com/koi-language/Koi/issues"
51
+ },
52
+ "homepage": "https://github.com/koi-language/Koi#readme",
53
+ "engines": {
54
+ "node": ">=18.0.0"
55
+ },
56
+ "dependencies": {
57
+ "@anthropic-ai/sdk": "^0.71.2",
58
+ "@keyv/sqlite": "^4.0.1",
59
+ "better-sqlite3": "^11.8.1",
60
+ "crypto-js": "^4.2.0",
61
+ "dotenv": "^17.2.3",
62
+ "keyv": "^5.1.1",
63
+ "lodash": "^4.17.23",
64
+ "node-fetch": "^3.3.2",
65
+ "openai": "^6.16.0",
66
+ "peggy": "^5.0.6",
67
+ "source-map": "^0.7.6",
68
+ "ws": "^8.19.0"
69
+ },
70
+ "devDependencies": {
71
+ "@types/jest": "^30.0.0",
72
+ "@types/node": "^25.0.10",
73
+ "jest": "^30.2.0",
74
+ "ts-jest": "^29.4.6",
75
+ "tsx": "^4.21.0",
76
+ "typescript": "^5.9.3"
77
+ }
78
+ }