ai-kit-python 1.4.3__py3-none-any.whl → 1.4.4__py3-none-any.whl

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 (45) hide show
  1. {ai_kit_python-1.4.3.dist-info → ai_kit_python-1.4.4.dist-info}/METADATA +6 -2
  2. {ai_kit_python-1.4.3.dist-info → ai_kit_python-1.4.4.dist-info}/RECORD +45 -34
  3. aikit/.agents/skills/project-continuity/SKILL.md +5 -6
  4. aikit/.dockerignore +2 -0
  5. aikit/.gitignore +2 -0
  6. aikit/CHANGELOG.md +11 -8
  7. aikit/MANIFEST.in +1 -0
  8. aikit/README.md +152 -9
  9. aikit/SKILL.md +4 -2
  10. aikit/VERSION +1 -1
  11. aikit/aikit_cli.py +1 -0
  12. aikit/docs/DEVELOPMENT_PLAN.md +1 -1
  13. aikit/docs/DOCKER.md +2 -2
  14. aikit/docs/DOCKER_HUB_OVERVIEW.md +26 -34
  15. aikit/docs/ORCHESTRATION.md +37 -0
  16. aikit/docs/PYPI.md +1 -1
  17. aikit/docs/PYPI_DESCRIPTION.md +4 -0
  18. aikit/docs/V1_4_3.md +39 -2
  19. aikit/docs/V1_4_4.md +20 -0
  20. aikit/docs/adr/0015-optional-bounded-orchestration.md +17 -0
  21. aikit/docs/changelog/v0.12.0.md +11 -0
  22. aikit/integrations/agents.json +2 -2
  23. aikit/integrations/codex-agents/aikit_explorer.toml +10 -0
  24. aikit/integrations/codex-agents/aikit_reviewer.toml +10 -0
  25. aikit/integrations/codex-agents/aikit_worker.toml +10 -0
  26. aikit/pyproject.toml +2 -2
  27. aikit/scripts/check_distribution.py +3 -2
  28. aikit/scripts/check_kit.py +3 -2
  29. aikit/scripts/doctor.py +7 -0
  30. aikit/scripts/install.py +28 -5
  31. aikit/scripts/orchestrate.py +452 -0
  32. aikit/template/ai-kit/ORCHESTRATION.md +27 -0
  33. aikit/template/ai-kit/orchestration.json +12 -0
  34. aikit/templates/gitignore.private +1 -0
  35. aikit/templates/gitignore.team +1 -0
  36. aikit/tests/build_distribution.py +2 -2
  37. aikit/tests/docker_smoke.py +7 -2
  38. aikit/tests/test_orchestration.py +418 -0
  39. aikit/tests/wheel_smoke.py +8 -2
  40. {ai_kit_python-1.4.3.dist-info → ai_kit_python-1.4.4.dist-info}/WHEEL +0 -0
  41. {ai_kit_python-1.4.3.dist-info → ai_kit_python-1.4.4.dist-info}/entry_points.txt +0 -0
  42. {ai_kit_python-1.4.3.dist-info → ai_kit_python-1.4.4.dist-info}/licenses/LICENSE +0 -0
  43. {ai_kit_python-1.4.3.dist-info → ai_kit_python-1.4.4.dist-info}/licenses/template/ai-kit/vendor/security-audit/LICENSE +0 -0
  44. {ai_kit_python-1.4.3.dist-info → ai_kit_python-1.4.4.dist-info}/licenses/template/ai-kit/vendor/strix/LICENSE +0 -0
  45. {ai_kit_python-1.4.3.dist-info → ai_kit_python-1.4.4.dist-info}/top_level.txt +0 -0
@@ -1,7 +1,7 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ai-kit-python
3
- Version: 1.4.3
4
- Summary: Offline installer and portable instructions that give AI coding agents project memory, stack rules, guardrails, and adaptive model routing.
3
+ Version: 1.4.4
4
+ Summary: Portable instructions and installer for AI coding agents: project memory, stack rules, model routing, and optional budgeted orchestration.
5
5
  Author: Igor Sazonov
6
6
  License-Expression: MIT AND Apache-2.0
7
7
  Project-URL: Homepage, https://github.com/tigusigalpa/ai-kit
@@ -132,3 +132,7 @@ Package releases follow GitHub Release, automated checks and owner approval befo
132
132
  - [Issues](https://github.com/tigusigalpa/ai-kit/issues)
133
133
 
134
134
  AI-KIT's own code and instructions are MIT licensed. Bundled Cloudflare references retain MIT; bundled Strix references retain Apache-2.0. The complete distribution declares `MIT AND Apache-2.0` and includes the corresponding license texts. External runtimes and application dependencies keep their own licenses.
135
+
136
+ ## Optional orchestration (v1.4.4)
137
+
138
+ Install with `--with-orchestration` to add scoped Codex helpers and disabled-by-default OpenRouter configuration. `aikit orchestrate` previews selected text tasks, executes only on explicit apply, enforces local admission and capped-key preflight, and retains private observed usage/cost, review and billing reconciliation. It never executes model output. Native helper billing is separate; real trials and savings are unverified. See the [complete guide](https://github.com/tigusigalpa/ai-kit#optional-orchestration).
@@ -1,30 +1,30 @@
1
- ai_kit_python-1.4.3.dist-info/licenses/LICENSE,sha256=Q4UBNXri7WF3F5T3Z2C_S22HoXWvOxiOs3CxSfPPNKE,1093
2
- ai_kit_python-1.4.3.dist-info/licenses/template/ai-kit/vendor/security-audit/LICENSE,sha256=5ZjmlKpQZlDHGS1eo74OUKyg01bqAFUcU0KfCwHrY5E,1078
3
- ai_kit_python-1.4.3.dist-info/licenses/template/ai-kit/vendor/strix/LICENSE,sha256=fblpcTQlHjFL2NOSV_4XDJiz4q2bLtZ-l6yvlhPnueM,11345
4
- aikit/.dockerignore,sha256=w-_fnJAWI5nBcSjGJci5OE2bYzlojYSw99gg7JEJ3xM,1378
1
+ ai_kit_python-1.4.4.dist-info/licenses/LICENSE,sha256=Q4UBNXri7WF3F5T3Z2C_S22HoXWvOxiOs3CxSfPPNKE,1093
2
+ ai_kit_python-1.4.4.dist-info/licenses/template/ai-kit/vendor/security-audit/LICENSE,sha256=5ZjmlKpQZlDHGS1eo74OUKyg01bqAFUcU0KfCwHrY5E,1078
3
+ ai_kit_python-1.4.4.dist-info/licenses/template/ai-kit/vendor/strix/LICENSE,sha256=fblpcTQlHjFL2NOSV_4XDJiz4q2bLtZ-l6yvlhPnueM,11345
4
+ aikit/.dockerignore,sha256=XhRVOHjBA4BHuC4qT5bEycKg1V_fuxBA1PI7aer6kck,1425
5
5
  aikit/.gitattributes,sha256=L4mMl0D8gLiDXx1_soWU2NSdM8TnWyp672qCVbe21sA,170
6
- aikit/.gitignore,sha256=OOFZre0vtV5U5t7nCO9lf2JMMlv8TEwteIaVQ3h6ahA,912
6
+ aikit/.gitignore,sha256=ESC6H1f2W2mPa9vt80dxYPDV78vilmGxEiimADlfgg8,937
7
7
  aikit/BOOTSTRAP_PROMPT.md,sha256=7r4CmBIfFPal5QilpsomlGIomEzGlI6nVbmksbEuMlw,1189
8
- aikit/CHANGELOG.md,sha256=-p-YkUAkLkq2VFISx2hyyZtTF4QhdwVEEVAGgGV0zhA,11910
8
+ aikit/CHANGELOG.md,sha256=PgQzfus-TLMEcxUHXJcZ_4e2vuY9u-_LhIYOk66xqc8,11293
9
9
  aikit/CLAUDE.md,sha256=R82TyQfYerEAkfrYIpVEcWZALc0q8tSucBe8RfSFerc,38
10
10
  aikit/CONTRIBUTING.md,sha256=td7vcyuQ4NIKiSGNKuSmpA3oL8-nfTJOoMWRdyKKBGk,5445
11
11
  aikit/Dockerfile,sha256=8uUyWxXYV2dfr9VCulzeJEEO5RGXg-5hEuN1kkYXlbY,1852
12
12
  aikit/KIMI.md,sha256=4xJ2oTEepf7mj-Klp7ymjoXRksZO45bE1x3NIyCIr4A,278
13
13
  aikit/LICENSE,sha256=Q4UBNXri7WF3F5T3Z2C_S22HoXWvOxiOs3CxSfPPNKE,1093
14
- aikit/MANIFEST.in,sha256=n9Yb2mcrR_mkNVXVSagxx6OUoLvbIsce8rDJk0SCa74,813
14
+ aikit/MANIFEST.in,sha256=E2CLkwEmuFwmgcLQeJQYoEJwnuMAexV63_CNBOb4llw,841
15
15
  aikit/MANUS.md,sha256=gVV5e04bVPecmyKzGaJNUq2pryknFafQNDiPmJ0ufq8,279
16
16
  aikit/Makefile,sha256=R_VqJHSi9awBzs24uccOioVXuso2Sz9WmnuHwYUXrd0,1476
17
- aikit/README.md,sha256=6c25fH-SRvAMKT55kOmFd8jtwZy-OjfQ2DzrRcGmx6k,96591
17
+ aikit/README.md,sha256=WT2caFu-uiMhlsWRmAeWYmQSYlHtrwwJJmsIVJ3i9nk,110489
18
18
  aikit/SECURITY.md,sha256=wATqnw5W4VyCqFhd-ksCBPQKQMx_neJo9RRxWykg9gg,922
19
- aikit/SKILL.md,sha256=8gH7-I-Zzp4yUKyU9p1sVHRBIOc4up_YNqjecSaGjJo,11993
20
- aikit/VERSION,sha256=vTHo2c-NFKHp4_3zufalJIGa7Q0bFGJ1I8Z2V2fH2PE,6
19
+ aikit/SKILL.md,sha256=hzEYDILTx2b7MsNcuL6qkovkmQ2d-oFinoNaCYE3Hxw,11888
20
+ aikit/VERSION,sha256=0D2LJotBcTKKwkWM6MqC1pof3jhGnU5PquT4-o2KXjU,6
21
21
  aikit/__init__.py,sha256=aNy2HbTnXlBlSZu868pK2uv1jLohV129gQn4dbup4k4,59
22
- aikit/aikit_cli.py,sha256=NPTFFYSZXSeZyRwEyEiixy0MCLfrXmHwpzJjWofoR-s,2051
23
- aikit/pyproject.toml,sha256=MWqpmeNwnDT7aMKNZVADklS_XEutbOGE8wnZfnBE8cg,2704
22
+ aikit/aikit_cli.py,sha256=xA8ewGVonK_ebsHzttjMNWoFPt2TF2CNTyY08pHbteo,2093
23
+ aikit/pyproject.toml,sha256=64SNtn8pN4xfs3v4HnrMVuo3TKGpcfr7cKaCqZSjVVc,2730
24
24
  aikit/.agents/skills/go-work/SKILL.md,sha256=Hs1urC4XsEufaUyO5L-_Nb2s2TusX-niuXdnZ9BCD58,421
25
25
  aikit/.agents/skills/laravel-work/SKILL.md,sha256=dJ55mRc2SPY2uTPArfDWZ-YtO7rfLYnv9E-tc91wzVY,589
26
26
  aikit/.agents/skills/moodle-work/SKILL.md,sha256=ZwQTExl6MyK1QrgcHKqr-9pPow_NYRzOJwMuQZN0o5U,439
27
- aikit/.agents/skills/project-continuity/SKILL.md,sha256=vfUTJPeKkU-y4JJZeqRm6WatzsZBdHR98oTLXzMUOGI,11926
27
+ aikit/.agents/skills/project-continuity/SKILL.md,sha256=gqEiDIkjbliql0rsxGIhm__tw-aCLTda3v0KGddVlF0,11991
28
28
  aikit/.agents/skills/python-work/SKILL.md,sha256=UBSgsbF7HF_8YvZgtI5v2Y0tw4BTzMcuV8hPcck6Trw,510
29
29
  aikit/.github/workflows/check-kit.yml,sha256=p0sg5S8I7yyukCV_I5OrTvUFsGYGhEbKjHezSrH76HA,2809
30
30
  aikit/.github/workflows/publish-pypi.yml,sha256=870enVcLWt7BMUSz2ksn86YbSl5bHkTAleFFKa_FTRw,4489
@@ -46,15 +46,16 @@ aikit/docs/ADAPTER_PATH_FIX.md,sha256=8fXc6BA_HiYO3nTVihhYO33THIEedCyp7R64EtTA6E
46
46
  aikit/docs/BENCHMARK.md,sha256=xaa33vwZcTmrHi_-9cJO1IRrljSaHhp5UDNtZdHQb_A,9961
47
47
  aikit/docs/CONTEXT7.md,sha256=PygcdLjWBTrcsFIMA9_PbPcgTfUpqAWsCAnMKFnxQIA,4628
48
48
  aikit/docs/DECISIONS.md,sha256=eLA5J-JpkbYUyHxQVSJHF13Qj6xjmvNmZ8S4lSuzd1w,2102
49
- aikit/docs/DEVELOPMENT_PLAN.md,sha256=1JsXP_hB0eHhBhwATJLV4QUriNx8zSJ38T65mOhY4M0,2882
49
+ aikit/docs/DEVELOPMENT_PLAN.md,sha256=4t5PFKg83a5rQyq78qIXQA4iyUmM4uTBORdKHSgTxXM,2919
50
50
  aikit/docs/DIALOGUE_MEMORY.md,sha256=APcLvRtnNo7xFFX3IEgCcUMbrhM4DoGQ5yzcokyEMdI,11674
51
- aikit/docs/DOCKER.md,sha256=bpl34SRO8Wjww-Cx1yJaypQEO-875OS6z9N_h5A9aJQ,11952
52
- aikit/docs/DOCKER_HUB_OVERVIEW.md,sha256=ULsPKzx9e4uiu2yPfAVkSsBMOKaQ1_u83xXJRN4hvwM,12389
51
+ aikit/docs/DOCKER.md,sha256=hUSa6bK8xzOYpUZ0muZqvcCoAkj-ky7OMecwA8HU370,11942
52
+ aikit/docs/DOCKER_HUB_OVERVIEW.md,sha256=YMHhSqOeGFbQDcpPnN80RifXfXpQ6p2hVFU1kecVvf8,13829
53
53
  aikit/docs/EVALUATION.md,sha256=TuP1Wj_aJqHixtNlacExMHzHsWqrb-pcG4dx7XDCU6Y,5383
54
54
  aikit/docs/IMPLEMENTATION.md,sha256=TptjeIGfKvff-0JSLbI9WHv5E_kKX1t36TbOdfBvKOk,11923
55
55
  aikit/docs/MANUS_REVIEW.md,sha256=kckW418jSVw9uLoIyEJXCATKQaVSiMV0woCfKYpih8Y,5238
56
- aikit/docs/PYPI.md,sha256=gYdaz77hXt2rCmSNvXYxZP8rHbcCMF4IFgFzrpwI_Rg,11884
57
- aikit/docs/PYPI_DESCRIPTION.md,sha256=1TiDJwQvWK9E8YTvSgpRstXm7GAuE0h22ct-GCLNyWg,6382
56
+ aikit/docs/ORCHESTRATION.md,sha256=S4zm10PQx3pkQemnYPBTaT_XSTxZjos54WMEUkbi4M8,5686
57
+ aikit/docs/PYPI.md,sha256=TPphbTGPAJSuywXYe2owGumuOlM3kjn3_Vy4SouM6rk,11853
58
+ aikit/docs/PYPI_DESCRIPTION.md,sha256=Oa8KMNnYGoO0-IUaf19uyP5YUvdI6rCMCPyniOdPS84,6938
58
59
  aikit/docs/SECURITY_AUDIT.md,sha256=N4iVkwSXOJYyZ6vh7kTdSzL_1Pxu4SD0XU8Mgsu9p5k,5185
59
60
  aikit/docs/STRIX.md,sha256=NLm6zV_p4uCjC5Mh4CL_GYRRNnSCpUmrOL-VgrzZSOc,6837
60
61
  aikit/docs/V0_5_0.md,sha256=XGrBhvLsTegvIo2gOc5Mt2vaC5IWX67xUPqN5J5WR90,3186
@@ -62,7 +63,8 @@ aikit/docs/V0_6_4.md,sha256=kHKiU83LQv7Iq6rWOzGBurxnBNgKwkOrDgp4h7wltq0,2865
62
63
  aikit/docs/V1_4_0.md,sha256=6GkMQ7N6x9deSB-7318K2rsC7BfG-Chex8YXhyFY_6A,8918
63
64
  aikit/docs/V1_4_1.md,sha256=RuR1SxGLf4Ncd7IlaD3Hp3-znhjcl3XPydTUMwpJA54,6373
64
65
  aikit/docs/V1_4_2.md,sha256=VWoL-d1RJoUsbWl-uhKpq52bgmeMxWylfUgCLj_JhqQ,5050
65
- aikit/docs/V1_4_3.md,sha256=8L0WfosF3J94T_H2RLjGGcLaHReRwQn0anAeQgLJcAE,4250
66
+ aikit/docs/V1_4_3.md,sha256=iUoKF1BftBWbnB35F-MZU4ysUOVIZ084DCjxvOI7YHA,8555
67
+ aikit/docs/V1_4_4.md,sha256=tlLh1G7LjV-PMm9G5YpnvEuCUvqMg5ilFCEySxmTdfs,1919
66
68
  aikit/docs/WEB_DESIGN.md,sha256=K5Y_yZlyiYaWr8PikIpbZCQmHGnkhR2vokNNRuGoeqM,11819
67
69
  aikit/docs/WINDOWS_CI_FIX.md,sha256=2HdCvpewggF0i2rnvKZiu2JAOHbVfKFvzlExradSTRc,3288
68
70
  aikit/docs/adr/0000-template.md,sha256=voTxxy1-LqBBDzsp_-8B9lL-aVtmbMhIyeZtSZHNDc8,493
@@ -80,6 +82,8 @@ aikit/docs/adr/0011-evidence-lifecycle-and-evaluation.md,sha256=bASiSRDE_Y5ZMnjF
80
82
  aikit/docs/adr/0012-measurement-led-routing.md,sha256=bSH9YILpzS7758J714Ha0Dajx7CRwjppaxEcT97ehiw,4825
81
83
  aikit/docs/adr/0013-docker-cli-image.md,sha256=twWXr_NilltZBaTkS_-zsMTGxZysThUCGAH3_viHCTw,2703
82
84
  aikit/docs/adr/0014-local-dialogue-memory.md,sha256=MoRRfTb-swVd7EefofOJdhMjZ2u4WCupLxyrPIsBzYc,2717
85
+ aikit/docs/adr/0015-optional-bounded-orchestration.md,sha256=MjtiX4VODz0LcadKPSj1my72915JYsZaMLTjbrl85Og,2118
86
+ aikit/docs/changelog/v0.12.0.md,sha256=2PngvmsLixkhqN61uw_ZfQg8Bf_mAQlSs3X8Tazv0-c,1425
83
87
  aikit/docs/history/original-bundle-checks.md,sha256=u8vcuLU00e6rfwzN4x9Hjhklj-RyDHUj9HPj8s6iDOM,1791
84
88
  aikit/docs/history/v0.1-changelog.txt,sha256=ehslKASZnr-Q5ejqr4X4ShAeAhvWrYTIGs9edFLwJTg,6721
85
89
  aikit/docs/history/v0.10-changelog.md,sha256=pv323p2EX6itkbPNK8Wxqoz3PEZDi3zjDmlXA1oHElY,2123
@@ -95,7 +99,7 @@ aikit/docs/history/v1.2.0-changelog.md,sha256=uNHoO2c1lbkzMSi64D65_wQbBOaIZ4pqfD
95
99
  aikit/docs/history/verification-before-measurements.md,sha256=-g5nSLDeX_XkMJnrBG8yjSaxYh9AksnrGAK6lV0yu4s,5033
96
100
  aikit/integrations/CONVENTIONS.md,sha256=3INoa_gY_G1rTo890F2IaAkDTHtBFtPVBpTKrPppdgQ,165
97
101
  aikit/integrations/README.md,sha256=G2WBk7WbX32dTZFHnSaHLd00gRcvPEqH78chpm2ee_k,858
98
- aikit/integrations/agents.json,sha256=en3Q41dDDjKwubBiB7VK9xYak8RpqPWrHoitbHO-bmU,4833
102
+ aikit/integrations/agents.json,sha256=g5xvholPsln5IKwzqM3TLO8iWHzTrW6XMkAEwEGvZrM,4897
99
103
  aikit/integrations/ai-kit-check.yml,sha256=auHZP4770QPzgm0zPxsXfQ8D5BT02qpGFt7Ss0xwrP0,2431
100
104
  aikit/integrations/ai-kit-cline.md,sha256=L4gNlRE33StC3XmGiV_zUusGCdLKzyavqsAti4C9TTs,246
101
105
  aikit/integrations/ai-kit-roo.md,sha256=2-xKWrNvzsfq09ZHsjvbCygINia9LpS8CQFj4T_eQ6M,209
@@ -106,24 +110,28 @@ aikit/integrations/claude-settings.git-ask.json,sha256=4Nts0zGxuQ_jdUlYcnooq8o6h
106
110
  aikit/integrations/copilot-instructions.md,sha256=vsKX9589IIjngAfH4wqr1_GVjpL0Mx8mu2OoOgZ_y_A,139
107
111
  aikit/integrations/security-audit.json,sha256=Pph9udBmg-EnWtCFQZfP-uYjuaEv8h0AjCh2Xz1eb7I,5124
108
112
  aikit/integrations/strix.json,sha256=WeeIZahjiOGG6x71EIHQuZfH6umMqcsPxGg5-LuJYv8,2657
113
+ aikit/integrations/codex-agents/aikit_explorer.toml,sha256=sOWADcpFmwBNiRs7OZ9cqNrqXS2L0JjtYiEj9lj6QLw,512
114
+ aikit/integrations/codex-agents/aikit_reviewer.toml,sha256=NsNA0UgU3oPHzCiVMzvMG3q0mYqp9MR4GnOvMVdRPQo,566
115
+ aikit/integrations/codex-agents/aikit_worker.toml,sha256=jU1ZVqd1K0tQBbCn_OwFEYY1rrL6BwJRuzWdWxi9jGc,574
109
116
  aikit/scripts/__init__.py,sha256=Nq1JfJ7G4ekmLXrJS4eXIhHuESn8zf8ZLOh9ZR96M7Y,38
110
117
  aikit/scripts/adapters.py,sha256=qIzu3tkrTgWEFt_wmS1pt6vyyxAegOe27YzHPhvvHIc,8171
111
118
  aikit/scripts/adaptive.py,sha256=1epV_Qj68k33Dp92J7YfOOSM4Lx5_6ae5uF1KdCk3vs,10341
112
119
  aikit/scripts/adr.py,sha256=MiznKf87_lnd_aefa-WcIjLvqqvndhGUSrh7_r6-okY,2149
113
120
  aikit/scripts/benchmark.py,sha256=zpqN6tzX9jWuf1M5bH-j4rBnTm-k5hSJr5CGKVOEIcc,31399
114
121
  aikit/scripts/changelog.py,sha256=NVhRrHMQvLkHEkGEdByOt-CPRaRaaMPdMcPNhMnjZ6s,1868
115
- aikit/scripts/check_distribution.py,sha256=fFnWoZeJ0WD_HTFJwLZcSKp1J6-tA1zyPkzEe1_lvb4,12816
116
- aikit/scripts/check_kit.py,sha256=17dJJkygEe6bM6ebBMaxRvVvVHTsat_WPQQD1scErWA,23194
122
+ aikit/scripts/check_distribution.py,sha256=4VnOMwbPxaOL4pFjjpViSIXo64MjWhGYWWbP-lfh4XA,12993
123
+ aikit/scripts/check_kit.py,sha256=g4k3icEOCcdWx61suFIYmD9qTNwnXIy1-zHx2ov9FoI,23310
117
124
  aikit/scripts/context.py,sha256=iVxiJQ3ZeU-yqFDRRlzq4zxPCz9AtrXTnQAPWJqzNko,9679
118
125
  aikit/scripts/docker_test_usage.py,sha256=GksIYslTVKm9mcFDulle_FtkMuKjVzHfdAr5FLXB0Bk,2529
119
- aikit/scripts/doctor.py,sha256=VgWUFHkCVaY3c03HBzas3aLgh1K9UZvA9R5UUHy9EDQ,16057
126
+ aikit/scripts/doctor.py,sha256=b0vNOOe66SipkokMoiVazpoC4RPqUzaLI0DB4uaySdo,16473
120
127
  aikit/scripts/evaluate.py,sha256=3HclA2D2QWHTk2y7KPLzoGY-PoZ_df1Dbtfwz4wfFtQ,5754
121
- aikit/scripts/install.py,sha256=7N3z5085zpXgw-lHU3KLOIZnrvGcUcGrD9p5O4CaDoU,85002
128
+ aikit/scripts/install.py,sha256=lWHaeaNjmKqL4qbHQvamEa5_Ykll3KlgSaWzIWypWLE,86764
122
129
  aikit/scripts/learning.py,sha256=jMfy2tbJzpRzxcKdg8d4dyU4JVQ-9_UrGS_3tFVv1HE,14860
123
130
  aikit/scripts/memory.py,sha256=ukwxmEEnwX62kFA6t_sJ9kTZuJz6yowAq3g3RpasQC8,19140
124
131
  aikit/scripts/memory_import.py,sha256=j5OtYG18NUV-K0avdy8Bup3OgxAETPcR1_kXPufqSNM,8836
125
132
  aikit/scripts/memory_store.py,sha256=NIwMwLIocKo7pps9V1OdgHV_51B6-_1L_l-x7OHlhLI,4598
126
133
  aikit/scripts/metrics.py,sha256=FZfCCK_3FaS1Vzs4M_y4Iy6G0SlesicMPDBwKfCP0cU,20847
134
+ aikit/scripts/orchestrate.py,sha256=zA6aYKjJLOf36CFn0o2Fbc4nF5s2wmXeHn0Sc1p67pA,25510
127
135
  aikit/scripts/router.py,sha256=B58okHVqyMYb7TyukI8INPk4SWO6HIuzMEg3Jf5ySVE,22427
128
136
  aikit/template/AGENTS.md,sha256=lDrUtWP2RVc6d7EoReASoUTFMxVdWygmZPSv8H2-1bU,1812
129
137
  aikit/template/CHANGELOG.md,sha256=HpJ54sfevof2M76rbyG97AxMVXqkqKBJE6rAgStl_PE,298
@@ -169,12 +177,14 @@ aikit/template/ai-kit/CORE.md,sha256=HYP1sD8tFFxe7YSnuG3Anbf2JvG5B086RpKcvEUJjKw
169
177
  aikit/template/ai-kit/ENGINEERING.md,sha256=w_OC0J4L9ZE8uIm3b9lAbyq0gElbFL1derD3DY46DQg,2680
170
178
  aikit/template/ai-kit/MCP.md,sha256=dKA4zWhRToxit1zGiO-6bDH5XfTHoUuhizXrQVjQDns,1638
171
179
  aikit/template/ai-kit/METRICS.md,sha256=nUb_eA89Xx0cBjdIqz2BuiF9HbGMJWstLnWjUgqhfd8,9511
180
+ aikit/template/ai-kit/ORCHESTRATION.md,sha256=NyhbezBdRXsLbsFXYQkW_DY6dNqYrUg5oXwykBzY-mQ,4765
172
181
  aikit/template/ai-kit/SECURITY-AUDIT.md,sha256=El7VX3d5oTCWx3zVbjmQM7W184bX4_Ya0pZgEPzzOyc,2405
173
182
  aikit/template/ai-kit/SECURITY.md,sha256=SfIMvn2_Eq202pjHwOwhJ9eKHrqB8C5OYO0sLbLInF4,3124
174
183
  aikit/template/ai-kit/SKILLS.md,sha256=h2N0rMP6iOdbowAUiVEC7Y4QhYZvEa_7zXFwFRVB8mM,3064
175
184
  aikit/template/ai-kit/STRIX.md,sha256=5bzkdRwyD9V5lw-tPF-Rku83l1-uqAlDRrjK-juSHiM,5381
176
185
  aikit/template/ai-kit/UPSTREAM.md,sha256=odDwMrSwoeVuKemTIAmWImPrmvyrv6liUMPWA6mztl0,4583
177
186
  aikit/template/ai-kit/WEB-DESIGN.md,sha256=2kWkKeWMffUzSH0tio4lwmmBj0g6rkZx_NBdGh0Cmag,5255
187
+ aikit/template/ai-kit/orchestration.json,sha256=bax1qEJAFz4n9bhdx9vUKeLzreZL6mJc27vdOWWQPQk,283
178
188
  aikit/template/ai-kit/project.json,sha256=qsyHcDU_dTkzkul0i_Zk9TQlZb3IX4evG3hrus1SWNo,194
179
189
  aikit/template/ai-kit/settings.json,sha256=ZCjs8ME3MPLPGF7b1SIS6rIhUf0OuyhI2-56HDDrvG4,248
180
190
  aikit/template/ai-kit/profiles/OWNER.md,sha256=O1V8mej_yh3wOfmZe7Ar_rFfV4DquWhwJbCbteslJmU,1583
@@ -244,10 +254,10 @@ aikit/template/docs/design/ACCEPTANCE.md,sha256=Z9uLS4qLDPSSxCF0OeZGODAXYH6FTnSw
244
254
  aikit/template/docs/design/BRIEF.md,sha256=C71Q3-Dr8AyN5KNyuHoIIkVoxCsczaVS8H7seZR2ksc,1552
245
255
  aikit/template/docs/design/SYSTEM.md,sha256=GELwyldo0Tqc3xm-twMxoEsYWX7n0q3oiI_42g7N71Q,1590
246
256
  aikit/templates/agent-secrets.ignore,sha256=tv-ODdU1SHB7QYdjCHGc-jzcFJmQEG0ewIxEFPNdlAA,382
247
- aikit/templates/gitignore.private,sha256=NYXXAZgcC-5G_MLRGaFNHW5n9V2TdYK78wOwjA0SRV8,2876
248
- aikit/templates/gitignore.team,sha256=0ySECblz4-vRx33DBkyzWXkRhgFFOcuvXEHpecVkyAE,2626
249
- aikit/tests/build_distribution.py,sha256=cevJDYnUJoLRGHt_XG1MbB0ofIrZoWXadzmPNol9QV4,3766
250
- aikit/tests/docker_smoke.py,sha256=vw49ZqeaVxJEumJyP0A0Wg_1LiyixMqjqybATw3T8PQ,9500
257
+ aikit/templates/gitignore.private,sha256=cv6tcKQ7tDxKPaLaHa1DyczEAQRoH1JRu_ZZVVpKt5M,2900
258
+ aikit/templates/gitignore.team,sha256=OzaA4_IdTNuG0gnTfXf9zkTuoa5JT3rJuvR2UKD6CLE,2650
259
+ aikit/tests/build_distribution.py,sha256=Rb-zYjgGWvBNaG073Tei8m56Mrflm1JvCYnCGjVOwJg,3820
260
+ aikit/tests/docker_smoke.py,sha256=mF4xxAnFRmUQ-qffV0xceiLMB8v9-zX1E6xsFZVxEiw,10078
251
261
  aikit/tests/test_adapters.py,sha256=Qa8M3o1FZuqOVTk2YMCXKh1UKoJyPQ2pv0-b-ckfqyI,5377
252
262
  aikit/tests/test_aikit.py,sha256=OE7kQz1zFR5eDitpBsmL1UkSMkWwDMmcIeOnd2ubx0s,3408
253
263
  aikit/tests/test_benchmark.py,sha256=1_NzpgaTU0CRNu6F6P3f9EPx0uUYYKHBiChUtTxR9Zc,13558
@@ -266,16 +276,17 @@ aikit/tests/test_memory.py,sha256=bv1aiYMWBSMbvICa7fLTZnLeckAV2JSSApOoS2KmSXI,20
266
276
  aikit/tests/test_metrics.py,sha256=SaZoNFNH66p74QucZPJRD0U8LkKoMUIqsY5x0Gk-WMI,11073
267
277
  aikit/tests/test_native.py,sha256=YxU-mSnf7zT7EY1u4-SMRY0pcPws9ko86uilzd1WhXE,19068
268
278
  aikit/tests/test_onboarding.py,sha256=0nJdWnfZVDtTTSQ4alcpgQgd-8_KpgI_Bl79SwWts7c,15255
279
+ aikit/tests/test_orchestration.py,sha256=2w7PB-x4NF8d6PeL65EK4GoGj7iyzf1r6qXRtE4o3cg,21642
269
280
  aikit/tests/test_pypi_events.py,sha256=cn3TaZsgevqqaJaSHqMEX_9IOJlXZzvbtim0iDG50e0,10294
270
281
  aikit/tests/test_router.py,sha256=bA_AWDxzn7l_G5cTHd9uvCadRlnpaY9DGH5lTzpXPeY,19667
271
282
  aikit/tests/test_security_audit.py,sha256=kPW5Mjx_G0fWIxHr6sjPNF-HsdGrM_cXqFIL-873fvY,13527
272
283
  aikit/tests/test_strix.py,sha256=ttBTs60eXUnemfn5sJvL4Sm329flcLXivv9U_RkRsFo,12867
273
284
  aikit/tests/test_web_design.py,sha256=QU-1Nikt31tKSSp42QP7EjelUgFqHtQcm9Qtr6ixQGE,12379
274
- aikit/tests/wheel_smoke.py,sha256=YqBDwMqpbJP0IoCFCVcyLr6wGCQg0Da6uZFWNP0KCFE,5842
285
+ aikit/tests/wheel_smoke.py,sha256=KUNvz2jN39mHlCQ-K9eP2DJhHFZX5Ng6CjBJumCc21A,6365
275
286
  aikit/tests/fixtures/create-junction.ps1,sha256=gWIMFbA3oQ8siQjy3wh2wU3SYPoF9K3rRlG3RgruBM4,632
276
287
  aikit/tests/fixtures/golden/claude-settings-local.json,sha256=YEOcQqZs-Q93j8e4JMoxyAHLpk6ANSMduieMU6EzqCA,1340
277
- ai_kit_python-1.4.3.dist-info/METADATA,sha256=B4Uog5_ZbJnWV1eoJK2PhauuI_AQBfXot4TuaUvvaN8,7792
278
- ai_kit_python-1.4.3.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
279
- ai_kit_python-1.4.3.dist-info/entry_points.txt,sha256=cPpNaVjBYz9S8t0ysZf37HXnBsXiX14yZX-C1fePz4s,47
280
- ai_kit_python-1.4.3.dist-info/top_level.txt,sha256=Ck-hW3dWXfVl4ca1lZReDP49M4R4lPu0zdyrt29YuqI,6
281
- ai_kit_python-1.4.3.dist-info/RECORD,,
288
+ ai_kit_python-1.4.4.dist-info/METADATA,sha256=E2iEPWaMH3PiHXQqoSvtTxs1FSPgfmZzpU2Dp4PzJ1c,8347
289
+ ai_kit_python-1.4.4.dist-info/WHEEL,sha256=YVMoNqKzERt-wjUZwJ33xBGAwnFl-4cqbYkTtWa4itE,91
290
+ ai_kit_python-1.4.4.dist-info/entry_points.txt,sha256=cPpNaVjBYz9S8t0ysZf37HXnBsXiX14yZX-C1fePz4s,47
291
+ ai_kit_python-1.4.4.dist-info/top_level.txt,sha256=Ck-hW3dWXfVl4ca1lZReDP49M4R4lPu0zdyrt29YuqI,6
292
+ ai_kit_python-1.4.4.dist-info/RECORD,,
@@ -7,8 +7,7 @@ description: Maintain AI-KIT's own context, template boundaries, and installer v
7
7
 
8
8
  Read [contribution rules](../../../CONTRIBUTING.md). Read optional local `../../../PROJECT_CONTEXT.md`, `../../../AGENTS.md` and `../../../WIKI.md` when present; otherwise verify facts from public source/configuration. These three root files stay local and untracked, outside wheel/Docker payloads; their template counterparts stay public. Check distributions with and without local copies and preserve their on-disk bytes when untracking.
9
9
  Keep the root context/history about this kit; keep template project facts uninitialized.
10
- For a procedure change, update current maintainer commands, this pointer contract, and relevant implementation docs in the same task.
11
- When verified facts or agreements change, synchronize this skill's scope/procedure/pointers and WIKI with the context; keep actual facts in context.
10
+ Sync commands, this skill, docs, context and WIKI on procedure/fact/agreement changes; keep facts in context.
12
11
  Validate templates/links/registry, the agent registry (integrations/agents.json), and behavioral installation scenarios; record root CHANGELOG entries. Keep the root SKILL.md (the repository as a skill) consistent with the CLI, presets, extras, and policies.
13
12
  Review explicit semantic acceptance and future-upgrade conflicts whenever installer baseline behavior changes.
14
13
  Check candidate draft preservation, state/settings validation, and adapter retirement conflicts when changing installation. Exercise installed Git visibility and portable linked-path refusal; distinguish synthetic fixtures from real application trials. Verify the conditional Docker trigger in installed AGENTS and preserve edited entry points during upgrades.
@@ -17,10 +16,10 @@ Exercise manifest-based profile detection and project-fact drafts (version/comma
17
16
  For generated client configuration, exercise private/team settings files and mode switches, owned-entry moves, project.json precedence, secret lists, ignore blocks, every scoped rule format with root modules and skipped paths, presets that turn extras off, and workflow skill copies; recheck client formats against primary docs before changing them.
18
17
  For routing, compare the implementation ladder with canonical POLICY, exercise English/Russian operation/risk regressions and override precedence, provider-review status/sources, and distinguish recommendations from executed model controls. For stack profiles, exercise manifest evidence, module scoping, and command drafting; for Filament specifically test Composer dependency/lock evidence and source/native skill lifecycle. For optional metrics, verify failure/recovery accounting, missing-value coverage, duplicate/lock/path guards, private/team journal visibility, schema 1/2 compatibility, experiment/arm/task identity, per-provider analyze output, and upgrade preservation. Exercise context snapshots and doctor warnings for new/removed modules, profile drift, and manifest changes. Exercise adapter reports plus explicit retirement of unchanged files, backups/state updates, and modified-file conflicts. Exercise opaque evaluator pair coverage without task-text persistence. Use the [evaluation protocol](../../../docs/EVALUATION.md) for separately authorized application trials; synthetic fixtures establish no savings.
19
18
  Record actual OS/runtime and unavailable checks in the implementation record; keep source visibility checks separate from client activation.
20
- For measurement-led changes, test schema 1/2/3 compatibility, fixed A/B controls, immutable Git blobs and isolated repeated workspaces, missing/estimated telemetry, semantic-review gates, interrupted runs and idempotent private exports. Exercise resume identity checks, per-unit failure recording and configurable kit-arm agents/presets. Check that worker Git discovery cannot reach the source through parents: a ceiling at cwd itself is ineffective. Keep worker requests separate from observed execution. Exercise routing modes/pins/profiles, distinct-case quality floors, matched history, unsupported controls, immutable proposal history and explicit backed-up restore. Exercise module context scope, duplicate content, critical rules/ADRs above byte budgets and linked paths. Follow [the staged plan](../../../docs/DEVELOPMENT_PLAN.md) and [worker contract](../../../docs/BENCHMARK.md); defer live adapters/orchestration until their mechanisms and total coordination costs are verified.
19
+ For measurement-led changes, test schema 1/2/3 compatibility, fixed A/B controls, immutable Git blobs and isolated repeated workspaces, missing/estimated telemetry, semantic-review gates, interrupted runs and idempotent private exports. Exercise resume identity checks, per-unit failure recording and configurable kit-arm agents/presets. Check that worker Git discovery cannot reach the source through parents: a ceiling at cwd itself is ineffective. Keep worker requests separate from observed execution. Exercise routing modes/pins/profiles, distinct-case quality floors, matched history, unsupported controls, immutable proposal history and explicit backed-up restore. Exercise module context scope, duplicate content, critical rules/ADRs above byte budgets and linked paths. Follow [the staged plan](../../../docs/DEVELOPMENT_PLAN.md) and [worker contract](../../../docs/BENCHMARK.md); keep native activation and real trials separate. For [optional orchestration](../../../docs/ORCHESTRATION.md), test opt-in/persistence, Codex helper conflicts/retirement, private/team/archive exclusions, bounded inputs/keys/budgets, reservations/locks, unknown billing, source-bound review and reconciliation without replay. Keep native costs separate; tests make no live calls.
21
20
  Resolve temporary fixture roots before deriving paths used by guards, assertions, or injected failures. Test equivalent path spellings; keep cleanup bound to original disposable directories. [Windows CI regression](../../../docs/WINDOWS_CI_FIX.md) records the relevant scenario.
22
21
  For reference upgrades, check the actual published tree and old paths left by overlays. Compatibility pointers link to canonical owners; never hide broken legacy links from the checker.
23
- When editing onboarding docs, verify examples against the actual CLI/defaults and preserve links to policy owners. Keep installation, native discovery, and measured execution claims distinct. For [OpenRouter documentation](../../../README.md#working-with-openrouter), recheck primary API/cache/usage docs; distinguish shipped context manifests from proposed request assembly/runtime, prompt caching from response reuse, and observed usage from assumed savings. Root README and Docker Hub Overview have no size quota; retain scoped instruction budgets and normal link/language checks.
22
+ Verify onboarding examples against CLI/defaults and canonical policy; distinguish installation, discovery and execution evidence. For [OpenRouter documentation](../../../README.md#working-with-openrouter), recheck primary API/cache/usage docs; distinguish shipped context manifests from proposed request assembly/runtime, prompt caching from response reuse, and observed usage from assumed savings. Root README and Docker Hub Overview have no size quota; retain scoped instruction budgets and normal link/language checks.
24
23
  For [PyPI releases](../../../docs/PYPI.md), verify metadata, VERSION, licenses, description, resources and private/path exclusions; build the wheel from sdist and smoke-install offline. Quote Twine globs; report OS gaps. A JSON 404 does not prove name eligibility. Test release/manual identity guards without uploads; preserve CI names and old tags. Published stable releases prepare PyPI artifacts; manual runs default to validation. Require exact version/tag/repository gates, owner approval and future tag coverage; agents must not approve deployments. OIDC belongs only in upload jobs consuming validated same-run artifacts. Keep setup, upload and live MCP activation separate.
25
24
  For repository administration or changes to existing required CI names, consult [repository maintenance](../../../CONTRIBUTING.md#repository-maintenance), verify live protection and emitted names, and keep required checks aligned. New local jobs establish no hosted result or required-check update. Remote changes need explicit authorization; Core governs commits/pushes.
26
25
  For every task assess [Docker image impact](../../../docs/DOCKER.md#change-impact-and-image-refresh), including packaged instructions and defaults. Follow canonical [image freshness](../../../template/ai-kit/CONTAINERS.md#image-freshness); rebuild/test affected final sources as ai-kit:dev or record why no rebuild is needed. For the image, verify actual client/daemon, pinned build inputs, VERSION/label identity, closed context, wheel resources, non-root bind permissions, read-only/offline preview and apply, preservation, conflicts, rerun and SIGTERM. Validate the Job schema; distinguish cluster/runtime coverage. Record test cache/volume ownership and size; follow canonical cleanup without shared-builder pruning. Keep image publication separate.
@@ -28,7 +27,7 @@ For [dialogue memory](../../../docs/DIALOGUE_MEMORY.md), test all supported impo
28
27
  For optional upstream skills, follow [security-audit](../../../docs/SECURITY_AUDIT.md) and [Strix integration](../../../docs/STRIX.md): preserve pinned bytes/license and newline attributes, verify bounded tree coverage/digests and nested-path aliases, explicit-only metadata, absent default/preset payloads, independent persistent choices, local adaptations/conflicts, links, visibility and wheel resources. Exempt only verified external examples from authored model/language/budget checks. Keep installation separate from audits/runtime setup; report unsupported validators. For Strix, check writable copy isolation, explicit full/diff scope, budget/data destination and no implicit cloud fallback; integration tests must start no scan, model or container.
29
28
  For [Context7](../../../docs/CONTEXT7.md), check opt-in skill/registry selection, independent persistence, source/native copies, local conflicts and unchanged native MCP configuration. Keep normal skill discovery, version-aware sanitized queries and remote activation separate. Recheck client schemas/authentication against primary docs; a source revision does not pin the hosted service.
30
29
  For [Web Design](../../../docs/WEB_DESIGN.md), check whole-module default absence, multi-entry skill selection, independent persistence, created-once project documents, native copies/retirement, local conflicts and linked/blocked paths. Exercise workflow context scope, required design memory above budgets, plain HTML without assumed stack facts, private raw output/team visibility and offline wheel resources. Keep TypeUI/SkillUI setup and real browser/Laravel acceptance separate from installer evidence; adopt external guidance only within the selected stack/visual system.
31
- For a requested release, synchronize VERSION, root changelog, README, WIKI and maintainer context; keep kit history out of templates. Recheck CLI/version, kit, isolated archives, offline installation and prior-version upgrade preservation. Distinguish checks before/after labeling. Follow [the owner-approved release path](../../../docs/V1_4_3.md): preserve tags, wait for hosted build checks and report pending human approval; never approve PyPI for the owner. Git authorization follows Core. Release notes must distinguish installed guidance from external tools, live client/model setup and generated-site acceptance; verify security examples against pinned contracts.
30
+ For a requested release, synchronize VERSION, root changelog, README, WIKI and maintainer context; keep kit history out of templates. Recheck CLI/version, kit, isolated archives, offline installation and prior-version upgrade preservation. Distinguish checks before/after labeling. Follow [the verified release path](../../../docs/V1_4_3.md#pypi-publication-and-read-back): preserve tags, wait for hosted build checks and report pending human approval; never approve PyPI for the owner. Git authorization follows Core. Release notes must distinguish installed guidance from external tools, live client/model setup and generated-site acceptance; verify security examples against pinned contracts.
32
31
  For every Docker image release, follow the [Docker Hub checklist](../../../CONTRIBUTING.md#docker-hub-releases) and update the complete [Overview](../../../docs/DOCKER_HUB_OVERVIEW.md); synchronize version/features/examples before building and verified publication identity afterward.
33
- For the current Docker/privacy release, follow [v1.4.1 preparation](../../../docs/V1_4_1.md); keep local image identity distinct from a registry digest and source-bound human review distinct from automatic conversation synchronization. After explicitly authorized publication, read back the registry digest, platform and version/configuration; preserve the prepared image and record later publication-only documentation separately. Do not assign additional tags implicitly.
32
+ For Docker releases, follow [image verification](../../../docs/V1_4_3.md#docker-hub-143); keep local image identity distinct from a registry digest and source-bound human review distinct from automatic conversation synchronization. After explicitly authorized publication, read back the registry digest, platform and version/configuration; preserve the prepared image and record later publication-only documentation separately. Do not assign additional tags implicitly.
34
33
  Do not bootstrap the reference repository as an application or imply native/runtime checks passed from static validation.
aikit/.dockerignore CHANGED
@@ -82,6 +82,8 @@ ai-kit/.metrics
82
82
  ai-kit/.metrics/**
83
83
  ai-kit/.memory
84
84
  ai-kit/.memory/**
85
+ ai-kit/.orchestration
86
+ ai-kit/.orchestration/**
85
87
  ai-kit/.upstream-cache
86
88
  ai-kit/.upstream-cache/**
87
89
  ai-kit/.design
aikit/.gitignore CHANGED
@@ -58,3 +58,5 @@ build/
58
58
  .DS_Store
59
59
  Thumbs.db
60
60
  Desktop.ini
61
+
62
+ /ai-kit/.orchestration/
aikit/CHANGELOG.md CHANGED
@@ -1,11 +1,19 @@
1
1
  # AI-KIT changelog
2
2
 
3
+ ## v1.4.4 (unreleased)
4
+
5
+ - Added a prominent README comparison of the Docker image and Python package, with registry links, requirements, install commands and setup guides.
6
+ - Added opt-in Codex helpers and a bounded OpenRouter text executor: explicit scope, capped-key preflight, durable reservations, private accounting, source-bound review and billing reconciliation without replay.
7
+ - Preserved installer defaults, presets, settings, helper edits and private/team runtime exclusions; added mocked regressions, detailed [instructions](README.md#optional-orchestration), package/image preparation and [verification](docs/V1_4_4.md).
8
+
3
9
  ## v1.4.3 (2026-10-16)
4
10
 
5
11
  - Added a live PyPI version badge to README.
6
- - Added stable GitHub Release publication preparation, event/version/repository guards and regression tests; manual validation stays the default. PyPI upload waits for the owner. The live tag policy now accepts v* with reviewer protections preserved. [Procedure](docs/PYPI.md#release-to-pypi-with-owner-approval). Archived v0.13.0 text intact to retain the changelog budget.
7
- - Added fifteen event regression tests. Before release labeling, 32 hosted CI checks and build-only workflow verification passed; kit checks, 368 packaged Linux tests (two platform skips), archive/privacy/Twine/offline wheel checks and Docker smoke also passed. [Release verification](docs/V1_4_3.md).
12
+ - Added stable GitHub Release checks and owner-approved PyPI uploads, event/version/repository guards, future v* tags and manual validation. [Procedure](docs/PYPI.md#release-to-pypi-with-owner-approval). Archived v0.13.0 text intact.
13
+ - Added fifteen event regression tests. Before labeling, 32 hosted checks and build-only verification passed, plus kit, 368 Linux tests (two skips), archive/privacy/Twine/offline wheel and Docker checks. [Verification](docs/V1_4_3.md).
8
14
  - Verified 1.4.3 CLI/archive/image identity, offline packaging, Docker smoke, 368 Linux tests and preserved private/team upgrades from v1.4.2.
15
+ - Verified PyPI 1.4.3 publication, matching hosted hashes and fresh registry installation; [receipt](docs/V1_4_3.md#pypi-publication-and-read-back).
16
+ - Published Docker Hub 1.4.3 with verified image/digest and refreshed README/Overview; [receipt](docs/V1_4_3.md#docker-hub-143).
9
17
 
10
18
  ## v1.4.2 (2026-10-16)
11
19
 
@@ -57,12 +65,7 @@
57
65
 
58
66
  ## v0.12.0 (2026-10-11)
59
67
 
60
- - Benchmark packs accept optional `kit_agents`/`kit_preset` (default codex/minimal), so kit arms install the client's real adapter set and preset instead of a hard-coded arm; both are validated against the installer registry.
61
- - Benchmark task paths are now probed against the benchmark project instead of the process working directory.
62
- - Interrupted benchmark runs are resumable: re-running `benchmark run` with the identical pack skips completed units and continues missing ones, and a changed pack is refused against the existing run. Per-unit infrastructure failures are recorded as explicit failed units, so one bad unit neither aborts the run nor hides as an executed attempt; failed units still block savings and cannot be reviewed as correct.
63
- - The unified `aikit` dispatcher now prefers installed `aikit.scripts.*` package modules over bare script-path imports, avoiding duplicate module objects inside the wheel.
64
- - The checker document budgets are named constants; the root README budget rises to 22000 bytes (human onboarding that never enters project context), other documents keep 12000.
65
- - Verified locally (Windows/Python 3.14.6): 252 tests ran, all passed, 1 runtime skip; kit validation returned zero errors and zero warnings; Python 3.10 grammar was verified for the changed sources. Live workers, native client activation and hosted CI remain unverified.
68
+ [Full preserved entry](docs/changelog/v0.12.0.md).
66
69
 
67
70
  ## v0.11.0 (2026-10-11)
68
71
 
aikit/MANIFEST.in CHANGED
@@ -6,6 +6,7 @@ include pyproject.toml Makefile MANIFEST.in
6
6
  recursive-include ai-kit *.md
7
7
  prune ai-kit/.metrics
8
8
  prune ai-kit/.memory
9
+ prune ai-kit/.orchestration
9
10
  prune ai-kit/.upstream-cache
10
11
  prune ai-kit/.design
11
12
  recursive-include .agents *
aikit/README.md CHANGED
@@ -6,8 +6,6 @@
6
6
 
7
7
  AI-KIT gives your coding agents persistent project memory, expert stack rules, **Kubernetes-ready** containers, **adaptive model routing**, and native configuration for **11 AI clients**. Add **Cloudflare security-audit** for structured security review and **Strix** for scoped pentesting workflows. One offline installer, zero installer dependencies, changes previewed before you apply them.
8
8
 
9
- **[v1.4.3](CHANGELOG.md#v143-2026-10-16)** adds **GitHub Release → checks → your approval → PyPI**, future release-tag support, fifteen event regression tests and a live PyPI version badge. [Release verification](docs/V1_4_3.md) separates GitHub release preparation from registry publication. The latest verified PyPI package is [ai-kit-python 1.4.2](https://pypi.org/project/ai-kit-python/1.4.2/); the published Docker Hub image remains **1.4.1**. Shared dialogue memory and all optional modules remain available.
10
-
11
9
  [![Python 3.10+](https://img.shields.io/badge/python-3.10%2B-3776AB?logo=python&logoColor=white)](#install)
12
10
  [![PyPI version](https://img.shields.io/pypi/v/ai-kit-python?logo=pypi&logoColor=white)](https://pypi.org/project/ai-kit-python/)
13
11
  [![Dependencies: none](https://img.shields.io/badge/dependencies-none-2ea44f)](scripts/install.py)
@@ -15,6 +13,22 @@ AI-KIT gives your coding agents persistent project memory, expert stack rules, *
15
13
  [![Docker Hub](https://img.shields.io/badge/Docker%20Hub-ai--kit-2496ED?logo=docker&logoColor=white)](https://hub.docker.com/r/tigusigalpa/ai-kit)
16
14
  [![License: MIT](https://img.shields.io/badge/license-MIT-blue)](LICENSE)
17
15
 
16
+ ## Get AI-KIT
17
+
18
+ | 🐳 **[Docker image](https://hub.docker.com/r/tigusigalpa/ai-kit)** | 🐍 **[Python package](https://pypi.org/project/ai-kit-python/)** |
19
+ | --- | --- |
20
+ | **Run AI-KIT in a ready-made container.** Includes Python, Git, the CLI, project templates and optional integration resources. No host Python installation needed. | **Install AI-KIT directly in your Python environment.** The `ai-kit-python` package provides the `aikit` command, project templates and optional integration resources. |
21
+ | **Requires:** Docker with Linux containers. Published platform: `linux/amd64`. | **Requires:** Python 3.10+. No mandatory third-party runtime dependencies. |
22
+ | **Download:** `docker pull tigusigalpa/ai-kit:1.4.3` | **Install or update:** `python -m pip install --upgrade ai-kit-python` |
23
+ | **Try the CLI:** `docker run --rm tigusigalpa/ai-kit:1.4.3 --help` | **Try the CLI:** `aikit --help` |
24
+ | [**Open Docker Hub →**](https://hub.docker.com/r/tigusigalpa/ai-kit) · [Project mount and launch examples](#run-ai-kit-with-docker) | [**Open PyPI →**](https://pypi.org/project/ai-kit-python/) · [Virtual environment and setup guide](#packaged-cli-and-pypi-status) |
25
+
26
+ Both distributions run the same CLI: preview installation into your project, apply the reviewed changes, then bootstrap your coding agent. **Published release: 1.4.3.**
27
+
28
+ **v1.4.4 preparation:** optional [orchestration](#optional-orchestration), native Codex helpers and a budgeted OpenRouter text executor. Package/image builds are local preparation; the published artifacts above remain 1.4.3.
29
+
30
+ **[v1.4.3](CHANGELOG.md#v143-2026-10-16)** is published on [PyPI as `ai-kit-python` 1.4.3](https://pypi.org/project/ai-kit-python/1.4.3/). The **GitHub Release → checks → your approval → PyPI** workflow completed successfully; published file hashes and installation from PyPI in a fresh environment were verified. This release adds future release-tag support, fifteen event regression tests and a live PyPI version badge. [Publication verification](docs/V1_4_3.md#pypi-publication-and-read-back). The **Docker Hub image 1.4.3** is also published and verified; [image verification](docs/V1_4_3.md#docker-hub-143). Shared dialogue memory and all optional modules remain available.
31
+
18
32
  [Features](#features-at-a-glance) · [Shared context](#shared-context-from-two-dialogues) · [Web Design](#web-design) · [Docker CLI](#run-ai-kit-with-docker) · [Security workflows](#security-workflows) · [Context7](#library-documentation-with-context7) · [OpenRouter](#working-with-openrouter) · [Quick start](#install) · [Stacks](#-built-for-your-stack) · [Presets](#presets) · [Update](#update-an-application-project)
19
33
 
20
34
  ## Features at a glance
@@ -228,7 +242,7 @@ Every command also runs through one CLI: `python aikit_cli.py install|doctor|rou
228
242
 
229
243
  ### Packaged CLI and PyPI status
230
244
 
231
- **AI-KIT 1.4.2 is available on [PyPI](https://pypi.org/project/ai-kit-python/1.4.2/).** Install package `ai-kit-python` and run command `aikit`; Python 3.10+ is required with no mandatory runtime dependencies. Publication uses GitHub Trusted Publishing. Uploaded wheel/source hashes and installation directly from PyPI were verified. TestPyPI was not used.
245
+ **AI-KIT 1.4.3 is available on [PyPI](https://pypi.org/project/ai-kit-python/1.4.3/).** Install package `ai-kit-python` and run command `aikit`; Python 3.10+ is required with no mandatory runtime dependencies. The owner-approved GitHub Release workflow published through Trusted Publishing. Both registry files match the tested workflow artifacts; fresh Windows/Python 3.12.14 installation, `aikit --version` and the installed kit check passed. [Publication record](docs/V1_4_3.md#pypi-publication-and-read-back). TestPyPI was not used.
232
246
 
233
247
  Install into a virtual environment:
234
248
 
@@ -304,7 +318,7 @@ The closed `.dockerignore` includes distribution sources and excludes Git, perso
304
318
 
305
319
  The ready-to-publish [Docker Hub Overview](docs/DOCKER_HUB_OVERVIEW.md) covers capabilities, release changes and launch examples; maintain it for every image release using the [release checklist](CONTRIBUTING.md#docker-hub-releases).
306
320
 
307
- **Published image:** [tigusigalpa/ai-kit:1.4.1](https://hub.docker.com/r/tigusigalpa/ai-kit/tags?name=1.4.1), for `linux/amd64`. Download with `docker pull tigusigalpa/ai-kit:1.4.1`. The mount examples below use the local name `ai-kit:1.4.1`; give the downloaded image that alias with `docker tag tigusigalpa/ai-kit:1.4.1 ai-kit:1.4.1` and set the version variable to `1.4.1`, or use the full namespaced image name in your commands. [Publication record](docs/V1_4_1.md#docker-hub-publication) records publication status and the verified digest. No `latest` tag was assigned and no automated registry push is configured.
321
+ **Published image:** [tigusigalpa/ai-kit:1.4.3](https://hub.docker.com/r/tigusigalpa/ai-kit/tags?name=1.4.3), for `linux/amd64`. The remote digest and configuration match the tested build; [publication record](docs/V1_4_3.md#docker-hub-143). Download with `docker pull tigusigalpa/ai-kit:1.4.3`. To reuse the local build examples, run `docker tag tigusigalpa/ai-kit:1.4.3 ai-kit:1.4.3` and set `$kitVersion` (PowerShell) or `kit_version` (Bash) to `1.4.3`; alternatively use the full image name. Existing version tags are preserved; no `latest` tag or automated registry push is configured.
308
322
 
309
323
  ### Preview and apply on Windows
310
324
 
@@ -388,7 +402,7 @@ Its `ai-kit:local` image with `imagePullPolicy: Never` is a local-cluster exampl
388
402
  ~~~sh
389
403
  python scripts/check_kit.py
390
404
  python -m unittest discover -s tests -v
391
- python tests/docker_smoke.py ai-kit:1.4.1 --context .
405
+ python tests/docker_smoke.py ai-kit:1.4.4 --context .
392
406
  ~~~
393
407
 
394
408
  Use the tag you actually built. The Docker smoke uses disposable synthetic projects, no runtime network and Docker's actual ignore engine; it checks preview/apply, all optional modules, preservation, rerun stability, read-only refusal and SIGTERM. CI builds and tests a local image without publishing it. [Maintainer contract and results](docs/DOCKER.md) records pins, packaging, checks and unavailable environments.
@@ -467,7 +481,7 @@ Exit codes: 0 success, 1 refusal, 2 unresolved conflicts. The installer works of
467
481
 
468
482
  ![Honest boundaries](https://i.postimg.cc/kgHZybJq/09-honest-boundaries.jpg)
469
483
 
470
- Routing recommends controls; confirm actual client activation. Permission rules and ignores reduce risk without being a security boundary. The optional benchmark requires an explicitly configured worker; no live vendor adapter is shipped.
484
+ Routing recommends controls; confirm actual client activation. Permission rules and ignores reduce risk without being a security boundary. The benchmark requires its own reviewed protocol worker. Optional OpenRouter text execution is separately enabled and explicitly applied; native client activation and end-to-end savings require independent verification.
471
485
 
472
486
  ## Measure, recommend and select context
473
487
 
@@ -1048,13 +1062,142 @@ Normalized messages, review files and exports can contain private material. The
1048
1062
 
1049
1063
  Files are created exclusively. Edited or conflicting existing artifacts are preserved and cause refusal; exact reruns are stable. Interrupted multi-file writes can leave completed or partial artifacts: inspect the session and use a fresh workspace when necessary. There is no automatic overwrite/recovery or synchronization loop. Source files are never modified. [Full contract, schemas and checks](docs/DIALOGUE_MEMORY.md).
1050
1064
 
1065
+ ## Optional orchestration
1066
+
1067
+ **Prepared for v1.4.4.** Use native Codex helpers for explicitly delegated local work and the bounded OpenRouter executor for selected text tasks. Both are optional. Installing the module performs no API calls, creates no credentials, changes no global Codex configuration and launches no agents. The published PyPI/Docker Hub 1.4.3 artifacts do not contain this module; use the prepared 1.4.4 wheel, source checkout or local image until that release is published.
1068
+
1069
+ ### Enable the module in an existing project
1070
+
1071
+ Use a CLI built from this revision. Preview against the same application path and retain the existing client selection:
1072
+
1073
+ ```powershell
1074
+ aikit install "C:\Projects\my-app" --with-orchestration
1075
+ aikit install "C:\Projects\my-app" --with-orchestration --apply --check
1076
+ ```
1077
+
1078
+ For a first Codex installation, add `--agent codex` to both commands. Existing selected agents, settings and other enabled modules persist. Orchestration is outside all presets, including strict. Its configuration starts with `enabled: false` and `model: null`; API execution needs separate configuration and `--apply`.
1079
+
1080
+ The installer adds:
1081
+
1082
+ | File | Ownership and purpose |
1083
+ | --- | --- |
1084
+ | `ai-kit/ORCHESTRATION.md` | Managed execution, authorization, accounting and recovery rules. |
1085
+ | `ai-kit/orchestration.json` | Created once, then preserved as project configuration. |
1086
+ | `.codex/agents/aikit_explorer.toml` | Read-only evidence gathering, only when Codex is selected. |
1087
+ | `.codex/agents/aikit_worker.toml` | Narrow implementation/mechanical work, only for Codex. |
1088
+ | `.codex/agents/aikit_reviewer.toml` | Independent read-only review, only for Codex. |
1089
+ | `ai-kit/.orchestration/` | Private runtime state, outputs and exclusive lock; created only when executing. |
1090
+
1091
+ Private mode ignores helpers and configuration; team mode can share those instructions while runtime state remains ignored. Ignore rules do not remove previously tracked files. Root private maintainer documents and runtime state remain excluded from packages and Docker builds. Existing helper edits become normal upgrade conflicts; existing `.codex/config.toml` and unrelated helper files are preserved. Deselecting Codex requires normal adapter review/retirement.
1092
+
1093
+ ### Delegate bounded work to Codex helpers
1094
+
1095
+ The native helper model/effort defaults are rendered from AI-KIT's canonical OpenAI catalogue: explorer and worker use the cheap role, reviewer the work role. Verify availability in your actual Codex session and edit/accept local adaptations when needed. These files inherit the parent provider, permissions and tools; they do not connect OpenRouter or change the parent's active model. Start a fresh session if required for discovery. [Official custom-agent configuration](https://learn.chatgpt.com/docs/agent-configuration/subagents).
1096
+
1097
+ Example task for the main agent:
1098
+
1099
+ > Inspect the parser change. Delegate read-only path discovery to aikit_explorer. Give aikit_worker only the identified parser and its regression tests, with exact acceptance criteria. Ask aikit_reviewer to review the resulting diff independently. Do not delegate recursively. Return the actual checks and unresolved risks.
1100
+
1101
+ Use the helpers only with explicit task/host authorization. Define file scope and expected evidence before delegation; keep large logs out of the parent thread. A simple task can stay with one agent. Native helpers consume their host's subscription/API limits: the OpenRouter budget below does not govern their spend. End-to-end savings require all planning, helper and review costs, including failed work.
1102
+
1103
+ ### Configure the OpenRouter executor
1104
+
1105
+ Edit `ai-kit/orchestration.json` deliberately. Example configuration, using a placeholder that you must replace with a verified available text-model ID:
1106
+
1107
+ ```json
1108
+ {
1109
+ "schema": 1,
1110
+ "enabled": true,
1111
+ "model": "provider/model-id",
1112
+ "budget_usd": "1.00",
1113
+ "request_reserve_usd": "0.10",
1114
+ "max_requests": 10,
1115
+ "max_input_bytes": 16000,
1116
+ "max_output_tokens": 1024,
1117
+ "timeout_seconds": 60,
1118
+ "max_price": {"prompt": "1", "completion": "3", "request": "0"}
1119
+ }
1120
+ ```
1121
+
1122
+ Select an exact model, not an automatic/free router alias. Confirm that the model supports text completions and the requested output limit. Price ceilings are USD per **million** prompt/completion tokens and USD per request. They filter providers; they are not a pre-billing quote. Set the request ceiling to zero to exclude per-request-priced routes. The runner disables model/provider fallbacks and streaming, sends no tools/plugins, and has no recursive agent or automatic retry loop. [Provider price filters](https://openrouter.ai/docs/guides/routing/provider-selection#max-price).
1123
+
1124
+ Create a **dedicated OpenRouter key** in the provider dashboard. Give it a positive, non-resetting spending limit no greater than `budget_usd`, include BYOK usage in that limit, and reserve it exclusively for this workflow. The runner verifies these settings using `GET /api/v1/key` before inference. It does not create keys or raise their limits. The key must have at least one request reserve remaining. Configure OPENROUTER_API_KEY through your approved secret manager or process environment; never put its value in a prompt, tracked file, task JSON or command-line argument. The CLI never prints it. [Key and budget limits](https://openrouter.ai/docs/api/reference/limits).
1125
+
1126
+ The dollar budget is lifetime accounting for this project's retained ledger, not an automatically resetting daily allowance. Local reservations prevent admitting more work than the remaining recorded budget. An already-sent request can exceed its reserve; server-side key caps provide an additional boundary with the provider's billing semantics. A local timeout does not prove cancellation or zero spend. Keep reserves conservative and input/output limits small.
1127
+
1128
+ ### Prepare a task and review the outgoing scope
1129
+
1130
+ Create a UTF-8 task file inside the application, for example `tasks/classify.json`:
1131
+
1132
+ ```json
1133
+ {
1134
+ "schema": 1,
1135
+ "id": "comments-001",
1136
+ "instruction": "Classify each supplied comment using bug, feature or other. Preserve each original id. Mark uncertain rows needs_review. Return JSON text and do not omit rows.",
1137
+ "input_files": ["data/comments-sample.txt"]
1138
+ }
1139
+ ```
1140
+
1141
+ The input list is explicit and project-relative. There is no implicit repository traversal or upload of project rules/history. Review the instruction and every selected file before permitting data to leave the machine. Hidden/credential paths, linked paths, traversal, nonregular files and oversized serialized messages are refused. Filename checks cannot recognize secrets embedded in ordinary text. Only selected text reaches `https://openrouter.ai/api/v1/chat/completions`; model output is treated as untrusted data.
1142
+
1143
+ ```powershell
1144
+ # Preview: no key needed, no writes and no network.
1145
+ aikit orchestrate run "C:\Projects\my-app" --task tasks/classify.json
1146
+
1147
+ # Execute only after reviewing the selected content and configured budget.
1148
+ aikit orchestrate run "C:\Projects\my-app" --task tasks/classify.json --apply
1149
+
1150
+ # Read local accounting without network.
1151
+ aikit orchestrate status "C:\Projects\my-app"
1152
+ ```
1153
+
1154
+ Preview reports the model, selected paths, serialized message bytes, request/config fingerprint, reserve and output path. An exact completed rerun uses its retained result; changing inputs/configuration while reusing the task ID refuses. Use a new opaque ID for a deliberately new task. A changed/deleted prior output refuses instead of silently rebilling.
1155
+
1156
+ ### Review results and account for costs
1157
+
1158
+ Each completed response is stored under `ai-kit/.orchestration/outputs/<id>.json`; it is never executed or applied to application code. A main agent or human must check coverage, invariants and uncertain cases. Passing transport validation is not semantic correctness.
1159
+
1160
+ ```powershell
1161
+ # Preview an explicit acceptance decision after inspecting the result.
1162
+ aikit orchestrate review "C:\Projects\my-app" --task-id comments-001 --outcome accepted
1163
+
1164
+ aikit orchestrate review "C:\Projects\my-app" --task-id comments-001 --outcome accepted --apply
1165
+ ```
1166
+
1167
+ Use `rejected` for a reviewed incorrect result. Acceptance binds to the original output hash and requires completed accounting. Status reports requested/served model, generation ID, input/output/cached/reasoning tokens when available, duration, billed USD, review state, incomplete accounting and cost per accepted result. All attempts contribute to spend, including failed and rejected results. Prompt text, input files, raw provider errors and credentials are absent from the accounting ledger; private output files still contain the model's text and need normal access controls. On Windows, filesystem ACLs control access; private modes are not a sandbox.
1168
+
1169
+ Observed `usage.cost` is recorded directly; no price-based token estimate is substituted. Missing token/cost fields remain unknown. Native Codex planning/review costs and manual review time remain separate; this ledger alone cannot establish end-to-end savings. The existing benchmark protocol still needs a reviewed worker for a controlled experiment; this text executor does not silently implement `aikit-worker-v1` or feed mixed-model evidence into adaptive learning. [Usage accounting](https://openrouter.ai/docs/cookbook/administration/usage-accounting).
1170
+
1171
+ ### Failures, concurrency and recovery
1172
+
1173
+ - An exclusive project lock serializes applies. A reservation is saved **before** each completion POST; a crash cannot make a potentially billed attempt disappear.
1174
+ - Unknown cost, a pending reservation, a timeout or a cost above the reserve blocks further inference. No automatic retry occurs, including after 429/5xx errors. Known charges for malformed/truncated/wrong-model/tool-call responses are retained.
1175
+ - If a generation ID is known, preview then apply a billing read-back. This never reruns inference:
1176
+
1177
+ ```powershell
1178
+ aikit orchestrate reconcile "C:\Projects\my-app" --task-id comments-001
1179
+ aikit orchestrate reconcile "C:\Projects\my-app" --task-id comments-001 --apply
1180
+ ```
1181
+
1182
+ - Reconciliation uses `GET /api/v1/generation?id=...`, requires the same generation ID and actual `total_cost`, then settles a valid retained result or a failed attempt. Unavailable billing stays unresolved.
1183
+ - A timeout without a generation ID needs operator investigation in OpenRouter billing. Preserve the state; do not delete it or replace unknown spend with zero. Automatic recovery for that ambiguous case is intentionally unavailable.
1184
+ - A process crash can leave `run.lock`. Confirm its owner stopped before removing that lock only; pending accounting must still be resolved. Never prune a shared Docker builder or delete the project ledger to bypass a budget.
1185
+
1186
+ Exit codes: **0** for preview, completed work or a status report; **1** for refusal/configuration/path/network preflight failure; **2** for a failed or uncertain inference result. Status itself remains read-only even when it reports unresolved accounting.
1187
+
1188
+ ### Python package, Docker and verification boundaries
1189
+
1190
+ The prepared 1.4.4 wheel includes the executor, templates, native helper sources and tests, with no new runtime dependencies. Docker must be rebuilt from this revision: use `ai-kit:dev` or `ai-kit:1.4.4` for local verification. Published `tigusigalpa/ai-kit:1.4.3` stays unchanged. Offline preview/status need no network; a future real `run --apply` needs outbound HTTPS and an intentionally supplied key, with a writable project mount. A read-only project mount cannot persist reservations or outputs. No Docker socket or privileged mode is needed.
1191
+
1192
+ Code and tests use synthetic inputs and substituted provider responses. Real API calls, native client activation, account availability and measured savings remain separate. [Maintainer verification and limitations](docs/ORCHESTRATION.md).
1193
+
1051
1194
  ## Working with OpenRouter
1052
1195
 
1053
1196
  ![Working with OpenRouter](https://i.postimg.cc/BnzyCKSS/13-working-with-openrouter.jpg)
1054
1197
 
1055
1198
  **AI-KIT rules can travel with your API requests.** OpenRouter can provide model access while a client or adapter supplies selected AI-KIT instructions, project facts and task material. This makes the kit useful beyond native coding-client configuration.
1056
1199
 
1057
- **Integration status:** AI-KIT ships offline instruction selection, [dialogue memory and messages export](#shared-context-from-two-dialogues), routing recommendations and opt-in measurements. It does not ship an OpenRouter HTTP adapter, provider profile or live model executor. The workflow below describes proposed API execution; local dialogue exports are already available. No API key, paid call or code upload is configured by installing AI-KIT.
1200
+ **Integration status:** The prepared v1.4.4 source adds the explicit [bounded text executor](#optional-orchestration). Instruction selection, dialogue exports, routing recommendations and opt-in measurements remain available. The general coding-agent/tool-loop architecture below is still a proposal; the shipped executor sends only explicitly selected text and never executes model output. Installing AI-KIT configures no API key or paid call.
1058
1201
 
1059
1202
  ### What can be reused
1060
1203
 
@@ -1137,9 +1280,9 @@ For a verified model/provider supporting explicit text-block caching, a stable p
1137
1280
 
1138
1281
  Inspect `usage.prompt_tokens_details.cached_tokens`, `cache_write_tokens` when supplied, input/output/reasoning usage and `usage.cost`. OpenRouter reports these usage and billing fields; missing values remain unknown. A cache write may have a cost, so a warm-cache hit rate alone cannot establish savings. [Usage accounting](https://openrouter.ai/docs/cookbook/administration/usage-accounting).
1139
1282
 
1140
- An adapter could map observed cached tokens to AI-KIT's `cached_input_tokens`, record complete billed attempt cost and retain actual served model/provider identity. Include failed requests, retries, tool loops and review calls. Keep prompts, code, credentials and raw debug output out of measurement journals. The existing [benchmark protocol](docs/BENCHMARK.md#worker-protocol) can host a separately implemented worker; it does not supply an OpenRouter worker today. Compare equivalent tasks and reviewed correctness, and control cold/warm cache conditions explicitly.
1283
+ The bounded text executor records observed cached tokens; a broader adapter could map observed cached tokens to AI-KIT's `cached_input_tokens`, record complete billed attempt cost and retain actual served model/provider identity. Include failed requests, retries, tool loops and review calls. Keep prompts, code, credentials and raw debug output out of measurement journals. The existing [benchmark protocol](docs/BENCHMARK.md#worker-protocol) can host a separately implemented worker; the text executor is not a benchmark-protocol worker. Compare equivalent tasks and reviewed correctness, and control cold/warm cache conditions explicitly.
1141
1284
 
1142
- ### Proposed adapter scope
1285
+ ### Further coding-agent adapter scope
1143
1286
 
1144
1287
  Start with read-only analysis and code review: preview selected files and outgoing content, resolve model capabilities, enforce agreed request/time/spend limits, then capture response/usage. Add HTTP timeouts and bounded retries with complete accounting. An API key belongs in an approved external secret mechanism; confirm the destination and permitted source-data scope before sending code.
1145
1288
 
aikit/SKILL.md CHANGED
@@ -98,8 +98,10 @@ CI and optional integrations stay outside presets. Read the audit, Strix, Contex
98
98
 
99
99
  ## Boundaries
100
100
 
101
- AI-KIT writes instructions and configuration; its opt-in benchmark invokes only an explicitly configured protocol worker. No live vendor adapter is shipped. Confirm activation in the actual client. Permission rules, ignore files, and MCP posture reduce risk but are not a security boundary. Hosted CI and real application trials are recorded as unverified unless evidence exists.
101
+ AI-KIT installs instructions and opt-in helpers. The optional text executor requires explicit apply and configured budget/key limits. Benchmark protocol workers and native client activation remain separate. Ignore/permission rules are not a sandbox; live savings require evidence.
102
102
 
103
103
  ## Use this repository as a skill
104
104
 
105
- This SKILL.md sits at the root of the AI-KIT repository, so the repository itself is the skill and carries its installer, templates, and documents. For Claude Code across all projects, clone it into the skills directory: `git clone https://github.com/tigusigalpa/ai-kit.git ~/.claude/skills/ai-kit`; the commands above then run from that folder. For other assistants, clone the repository next to the project or paste this file as context. Canonical documents: [README](README.md), [Core](template/ai-kit/CORE.md), [adapters and presets](template/ai-kit/ADAPTERS.md), [containers](template/ai-kit/CONTAINERS.md), [routing](template/ai-kit/router/POLICY.md), [contribution rules](CONTRIBUTING.md).
105
+ This repository is the skill. For Claude Code, clone it into `~/.claude/skills/ai-kit`; for other clients, use a reviewed checkout beside the project. Follow [README](README.md), [Core](template/ai-kit/CORE.md), [adapters](template/ai-kit/ADAPTERS.md), [containers](template/ai-kit/CONTAINERS.md), [routing](template/ai-kit/router/POLICY.md) and [contribution rules](CONTRIBUTING.md).
106
+
107
+ For explicitly requested [optional orchestration](template/ai-kit/ORCHESTRATION.md), preview installation with --with-orchestration; use `aikit orchestrate run|status|review|reconcile`. Native helpers and paid external requests require separate explicit execution; no real calls during integration tests.
aikit/VERSION CHANGED
@@ -1 +1 @@
1
- 1.4.3
1
+ 1.4.4
aikit/aikit_cli.py CHANGED
@@ -15,6 +15,7 @@ _COMMANDS = {
15
15
  "doctor": ("doctor", None),
16
16
  "context": ("context", None),
17
17
  "memory": ("memory", None),
18
+ "orchestrate": ("orchestrate", None),
18
19
  "adapters": ("adapters", None),
19
20
  "route": ("router", "route"),
20
21
  "configure": ("router", "configure"),