ai-kit-python 1.4.2__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.
- ai_kit_python-1.4.2.dist-info/METADATA +132 -0
- ai_kit_python-1.4.2.dist-info/RECORD +278 -0
- ai_kit_python-1.4.2.dist-info/WHEEL +5 -0
- ai_kit_python-1.4.2.dist-info/entry_points.txt +2 -0
- ai_kit_python-1.4.2.dist-info/licenses/LICENSE +21 -0
- ai_kit_python-1.4.2.dist-info/licenses/template/ai-kit/vendor/security-audit/LICENSE +21 -0
- ai_kit_python-1.4.2.dist-info/licenses/template/ai-kit/vendor/strix/LICENSE +201 -0
- ai_kit_python-1.4.2.dist-info/top_level.txt +1 -0
- aikit/.agents/skills/go-work/SKILL.md +8 -0
- aikit/.agents/skills/laravel-work/SKILL.md +8 -0
- aikit/.agents/skills/moodle-work/SKILL.md +8 -0
- aikit/.agents/skills/project-continuity/SKILL.md +34 -0
- aikit/.agents/skills/python-work/SKILL.md +8 -0
- aikit/.dockerignore +90 -0
- aikit/.gitattributes +3 -0
- aikit/.github/workflows/check-kit.yml +70 -0
- aikit/.github/workflows/publish-pypi.yml +108 -0
- aikit/.gitignore +60 -0
- aikit/BOOTSTRAP_PROMPT.md +18 -0
- aikit/CHANGELOG.md +85 -0
- aikit/CLAUDE.md +3 -0
- aikit/CONTRIBUTING.md +46 -0
- aikit/Dockerfile +44 -0
- aikit/KIMI.md +3 -0
- aikit/LICENSE +21 -0
- aikit/MANIFEST.in +22 -0
- aikit/MANUS.md +3 -0
- aikit/Makefile +70 -0
- aikit/README.md +1161 -0
- aikit/SECURITY.md +8 -0
- aikit/SKILL.md +105 -0
- aikit/VERSION +1 -0
- aikit/__init__.py +1 -0
- aikit/ai-kit/ADAPTERS.md +5 -0
- aikit/ai-kit/CONTAINERS.md +5 -0
- aikit/ai-kit/ENGINEERING.md +5 -0
- aikit/ai-kit/INTENT.md +5 -0
- aikit/ai-kit/MODELS.md +5 -0
- aikit/ai-kit/SKILLS.md +5 -0
- aikit/ai-kit/stacks/GO.md +5 -0
- aikit/ai-kit/stacks/LARAVEL.md +5 -0
- aikit/ai-kit/stacks/MOODLE.md +5 -0
- aikit/ai-kit/stacks/PYTHON.md +5 -0
- aikit/aikit_cli.py +59 -0
- aikit/deploy/k8s/install-preview-job.yaml +56 -0
- aikit/docker/build-requirements.txt +4 -0
- aikit/docker/check_version.py +29 -0
- aikit/docker/pypi-requirements.txt +3 -0
- aikit/docs/ADAPTER_PATH_FIX.md +23 -0
- aikit/docs/BENCHMARK.md +106 -0
- aikit/docs/CONTEXT7.md +33 -0
- aikit/docs/DECISIONS.md +22 -0
- aikit/docs/DEVELOPMENT_PLAN.md +16 -0
- aikit/docs/DIALOGUE_MEMORY.md +70 -0
- aikit/docs/DOCKER.md +74 -0
- aikit/docs/DOCKER_HUB_OVERVIEW.md +311 -0
- aikit/docs/EVALUATION.md +30 -0
- aikit/docs/IMPLEMENTATION.md +134 -0
- aikit/docs/MANUS_REVIEW.md +46 -0
- aikit/docs/PYPI.md +87 -0
- aikit/docs/PYPI_DESCRIPTION.md +103 -0
- aikit/docs/SECURITY_AUDIT.md +26 -0
- aikit/docs/STRIX.md +28 -0
- aikit/docs/V0_5_0.md +27 -0
- aikit/docs/V0_6_4.md +25 -0
- aikit/docs/V1_4_0.md +73 -0
- aikit/docs/V1_4_1.md +55 -0
- aikit/docs/V1_4_2.md +33 -0
- aikit/docs/WEB_DESIGN.md +72 -0
- aikit/docs/WINDOWS_CI_FIX.md +39 -0
- aikit/docs/adr/0000-template.md +24 -0
- aikit/docs/adr/0001-adaptive-model-routing.md +30 -0
- aikit/docs/adr/0002-template-separation.md +24 -0
- aikit/docs/adr/0003-agent-registry-and-router.md +24 -0
- aikit/docs/adr/0004-onboarding-and-project-facts.md +24 -0
- aikit/docs/adr/0005-client-settings-ownership.md +30 -0
- aikit/docs/adr/0006-routing-evidence-and-local-measurements.md +26 -0
- aikit/docs/adr/0007-generated-client-configuration-and-presets.md +34 -0
- aikit/docs/adr/0008-unified-cli-and-fact-drift.md +20 -0
- aikit/docs/adr/0009-provider-review-doctor-fix-and-ci-self-install.md +20 -0
- aikit/docs/adr/0010-metrics-analysis-and-gemini-verification.md +20 -0
- aikit/docs/adr/0011-evidence-lifecycle-and-evaluation.md +20 -0
- aikit/docs/adr/0012-measurement-led-routing.md +31 -0
- aikit/docs/adr/0013-docker-cli-image.md +24 -0
- aikit/docs/adr/0014-local-dialogue-memory.md +22 -0
- aikit/docs/history/original-bundle-checks.md +11 -0
- aikit/docs/history/v0.1-changelog.txt +37 -0
- aikit/docs/history/v0.10-changelog.md +12 -0
- aikit/docs/history/v0.2-changelog.md +35 -0
- aikit/docs/history/v0.3-changelog.md +25 -0
- aikit/docs/history/v0.4-changelog.md +31 -0
- aikit/docs/history/v0.5-changelog.md +14 -0
- aikit/docs/history/v0.6.4-changelog.md +12 -0
- aikit/docs/history/v0.6.5-v0.9-changelog.md +35 -0
- aikit/docs/history/v1.1.0-changelog.md +12 -0
- aikit/docs/history/v1.2.0-changelog.md +11 -0
- aikit/docs/history/verification-before-measurements.md +53 -0
- aikit/integrations/CONVENTIONS.md +3 -0
- aikit/integrations/README.md +7 -0
- aikit/integrations/agents.json +136 -0
- aikit/integrations/ai-kit-check.yml +66 -0
- aikit/integrations/ai-kit-cline.md +4 -0
- aikit/integrations/ai-kit-roo.md +4 -0
- aikit/integrations/ai-kit-windsurf.md +4 -0
- aikit/integrations/ai-kit.mdc +6 -0
- aikit/integrations/claude-settings.data-ask.json +23 -0
- aikit/integrations/claude-settings.git-ask.json +10 -0
- aikit/integrations/copilot-instructions.md +3 -0
- aikit/integrations/security-audit.json +135 -0
- aikit/integrations/strix.json +69 -0
- aikit/pyproject.toml +60 -0
- aikit/scripts/__init__.py +1 -0
- aikit/scripts/adapters.py +184 -0
- aikit/scripts/adaptive.py +167 -0
- aikit/scripts/adr.py +61 -0
- aikit/scripts/benchmark.py +543 -0
- aikit/scripts/changelog.py +55 -0
- aikit/scripts/check_distribution.py +178 -0
- aikit/scripts/check_kit.py +406 -0
- aikit/scripts/context.py +184 -0
- aikit/scripts/docker_test_usage.py +55 -0
- aikit/scripts/doctor.py +313 -0
- aikit/scripts/evaluate.py +125 -0
- aikit/scripts/install.py +1584 -0
- aikit/scripts/learning.py +260 -0
- aikit/scripts/memory.py +344 -0
- aikit/scripts/memory_import.py +177 -0
- aikit/scripts/memory_store.py +125 -0
- aikit/scripts/metrics.py +351 -0
- aikit/scripts/router.py +399 -0
- aikit/template/.agents/hooks/session-start.md +3 -0
- aikit/template/.agents/hooks/session-start.sh +21 -0
- aikit/template/.agents/skills/ai-kit-bootstrap/SKILL.md +14 -0
- aikit/template/.agents/skills/ai-kit-review/SKILL.md +11 -0
- aikit/template/.agents/skills/ai-kit-sync-context/SKILL.md +12 -0
- aikit/template/.agents/skills/context7-docs/SKILL.md +11 -0
- aikit/template/.agents/skills/design-extract/SKILL.md +9 -0
- aikit/template/.agents/skills/dotnet-work/SKILL.md +9 -0
- aikit/template/.agents/skills/filament-work/SKILL.md +9 -0
- aikit/template/.agents/skills/frontend-work/SKILL.md +9 -0
- aikit/template/.agents/skills/go-work/SKILL.md +9 -0
- aikit/template/.agents/skills/infra-work/SKILL.md +9 -0
- aikit/template/.agents/skills/java-work/SKILL.md +9 -0
- aikit/template/.agents/skills/laravel-blade-ui/SKILL.md +9 -0
- aikit/template/.agents/skills/laravel-work/SKILL.md +10 -0
- aikit/template/.agents/skills/library-work/SKILL.md +9 -0
- aikit/template/.agents/skills/moodle-work/SKILL.md +9 -0
- aikit/template/.agents/skills/php-work/SKILL.md +9 -0
- aikit/template/.agents/skills/project-continuity/SKILL.md +21 -0
- aikit/template/.agents/skills/python-work/SKILL.md +9 -0
- aikit/template/.agents/skills/rust-work/SKILL.md +9 -0
- aikit/template/.agents/skills/security-audit/SKILL.md +16 -0
- aikit/template/.agents/skills/security-audit/agents/openai.yaml +2 -0
- aikit/template/.agents/skills/strix/SKILL.md +16 -0
- aikit/template/.agents/skills/strix/agents/openai.yaml +2 -0
- aikit/template/.agents/skills/ui-review/SKILL.md +9 -0
- aikit/template/.agents/skills/web-design/SKILL.md +9 -0
- aikit/template/AGENTS.md +16 -0
- aikit/template/CHANGELOG.md +6 -0
- aikit/template/CLAUDE.md +5 -0
- aikit/template/GEMINI.md +4 -0
- aikit/template/KIMI.md +4 -0
- aikit/template/MANUS.md +4 -0
- aikit/template/PROJECT_CONTEXT.md +35 -0
- aikit/template/README.md +6 -0
- aikit/template/WIKI.md +37 -0
- aikit/template/ai-kit/ADAPTERS.md +100 -0
- aikit/template/ai-kit/BOOTSTRAP.md +15 -0
- aikit/template/ai-kit/CONTAINERS.md +63 -0
- aikit/template/ai-kit/CONTEXT7.md +96 -0
- aikit/template/ai-kit/CORE.md +23 -0
- aikit/template/ai-kit/ENGINEERING.md +34 -0
- aikit/template/ai-kit/MCP.md +17 -0
- aikit/template/ai-kit/METRICS.md +83 -0
- aikit/template/ai-kit/SECURITY-AUDIT.md +21 -0
- aikit/template/ai-kit/SECURITY.md +34 -0
- aikit/template/ai-kit/SKILLS.md +37 -0
- aikit/template/ai-kit/STRIX.md +44 -0
- aikit/template/ai-kit/UPSTREAM.md +38 -0
- aikit/template/ai-kit/WEB-DESIGN.md +37 -0
- aikit/template/ai-kit/profiles/OWNER.md +19 -0
- aikit/template/ai-kit/project.json +14 -0
- aikit/template/ai-kit/router/POLICY.md +79 -0
- aikit/template/ai-kit/router/providers/anthropic.json +44 -0
- aikit/template/ai-kit/router/providers/anthropic.md +14 -0
- aikit/template/ai-kit/router/providers/gemini.json +13 -0
- aikit/template/ai-kit/router/providers/gemini.md +10 -0
- aikit/template/ai-kit/router/providers/kimi.json +26 -0
- aikit/template/ai-kit/router/providers/kimi.md +13 -0
- aikit/template/ai-kit/router/providers/local.json +18 -0
- aikit/template/ai-kit/router/providers/local.md +10 -0
- aikit/template/ai-kit/router/providers/openai.json +48 -0
- aikit/template/ai-kit/router/providers/openai.md +14 -0
- aikit/template/ai-kit/router/routing.json +11 -0
- aikit/template/ai-kit/router/selection.json +14 -0
- aikit/template/ai-kit/settings.json +11 -0
- aikit/template/ai-kit/stacks/DOTNET.md +13 -0
- aikit/template/ai-kit/stacks/FILAMENT.md +18 -0
- aikit/template/ai-kit/stacks/FRONTEND.md +9 -0
- aikit/template/ai-kit/stacks/GO.md +19 -0
- aikit/template/ai-kit/stacks/INFRA.md +12 -0
- aikit/template/ai-kit/stacks/JAVA.md +13 -0
- aikit/template/ai-kit/stacks/LARAVEL.md +15 -0
- aikit/template/ai-kit/stacks/LIBRARY.md +9 -0
- aikit/template/ai-kit/stacks/MOODLE.md +12 -0
- aikit/template/ai-kit/stacks/PHP.md +11 -0
- aikit/template/ai-kit/stacks/PYTHON.md +11 -0
- aikit/template/ai-kit/stacks/RUST.md +18 -0
- aikit/template/ai-kit/vendor/security-audit/AI-AND-LLM.md +83 -0
- aikit/template/ai-kit/vendor/security-audit/ATTACK-CLASSES.md +130 -0
- aikit/template/ai-kit/vendor/security-audit/CLIENT-SIDE.md +83 -0
- aikit/template/ai-kit/vendor/security-audit/CLOUD-AND-DEPLOYMENT.md +86 -0
- aikit/template/ai-kit/vendor/security-audit/DATA-ISOLATION-AND-LIFECYCLE.md +84 -0
- aikit/template/ai-kit/vendor/security-audit/DESKTOP-MOBILE-AND-LOCAL-IPC.md +89 -0
- aikit/template/ai-kit/vendor/security-audit/HUNTING.md +251 -0
- aikit/template/ai-kit/vendor/security-audit/LICENSE +21 -0
- aikit/template/ai-kit/vendor/security-audit/MEMORY-SAFETY-AND-BINARY.md +101 -0
- aikit/template/ai-kit/vendor/security-audit/PROTOCOLS-RPC-AND-MESSAGING.md +81 -0
- aikit/template/ai-kit/vendor/security-audit/RECONNAISSANCE.md +156 -0
- aikit/template/ai-kit/vendor/security-audit/RESOURCE-EXHAUSTION-AND-AVAILABILITY.md +78 -0
- aikit/template/ai-kit/vendor/security-audit/SKILL.md +192 -0
- aikit/template/ai-kit/vendor/security-audit/SUPPLY-CHAIN-AND-RELEASE.md +73 -0
- aikit/template/ai-kit/vendor/security-audit/VALIDATION-AND-REPORTING.md +186 -0
- aikit/template/ai-kit/vendor/security-audit/WEB-PROTOCOL-AND-AUTH.md +105 -0
- aikit/template/ai-kit/vendor/security-audit/report-schema.json +461 -0
- aikit/template/ai-kit/vendor/security-audit/validate-coverage-ledger.cjs +872 -0
- aikit/template/ai-kit/vendor/security-audit/validate-coverage-ledger.test.cjs +740 -0
- aikit/template/ai-kit/vendor/security-audit/validate-findings.cjs +773 -0
- aikit/template/ai-kit/vendor/security-audit/validate-findings.test.cjs +652 -0
- aikit/template/ai-kit/vendor/strix/LICENSE +201 -0
- aikit/template/ai-kit/vendor/strix/api-security-testing/SKILL.md +61 -0
- aikit/template/ai-kit/vendor/strix/application-security-testing/SKILL.md +66 -0
- aikit/template/ai-kit/vendor/strix/ci-security-scanning-with-strix/SKILL.md +149 -0
- aikit/template/ai-kit/vendor/strix/find-security-vulnerabilities-in-code/SKILL.md +62 -0
- aikit/template/ai-kit/vendor/strix/fix-security-vulnerabilities-with-strix/SKILL.md +77 -0
- aikit/template/ai-kit/vendor/strix/managed-pentesting-with-strix/SKILL.md +321 -0
- aikit/template/ai-kit/vendor/strix/owasp-top-10-testing/SKILL.md +64 -0
- aikit/template/ai-kit/vendor/strix/penetration-testing-with-strix/SKILL.md +162 -0
- aikit/template/ai-kit/vendor/strix/web-app-penetration-testing/SKILL.md +54 -0
- aikit/template/ai-kit/web-design/LARAVEL.md +51 -0
- aikit/template/ai-kit/web-design/LIBRARIES.md +39 -0
- aikit/template/ai-kit/web-design/REVIEW.md +37 -0
- aikit/template/ai-kit/web-design/TOOLS.md +43 -0
- aikit/template/docs/DECISIONS.md +7 -0
- aikit/template/docs/adr/0000-template.md +20 -0
- aikit/template/docs/design/ACCEPTANCE.md +24 -0
- aikit/template/docs/design/BRIEF.md +26 -0
- aikit/template/docs/design/SYSTEM.md +30 -0
- aikit/templates/agent-secrets.ignore +19 -0
- aikit/templates/gitignore.private +160 -0
- aikit/templates/gitignore.team +139 -0
- aikit/tests/build_distribution.py +73 -0
- aikit/tests/docker_smoke.py +172 -0
- aikit/tests/fixtures/create-junction.ps1 +18 -0
- aikit/tests/fixtures/golden/claude-settings-local.json +58 -0
- aikit/tests/test_adapters.py +105 -0
- aikit/tests/test_aikit.py +79 -0
- aikit/tests/test_benchmark.py +241 -0
- aikit/tests/test_check_kit.py +203 -0
- aikit/tests/test_context.py +76 -0
- aikit/tests/test_context7.py +153 -0
- aikit/tests/test_context_selection.py +70 -0
- aikit/tests/test_distribution.py +181 -0
- aikit/tests/test_docker_image.py +63 -0
- aikit/tests/test_docker_test_usage.py +54 -0
- aikit/tests/test_doctor.py +148 -0
- aikit/tests/test_evaluate.py +66 -0
- aikit/tests/test_install.py +939 -0
- aikit/tests/test_learning.py +247 -0
- aikit/tests/test_memory.py +371 -0
- aikit/tests/test_metrics.py +209 -0
- aikit/tests/test_native.py +342 -0
- aikit/tests/test_onboarding.py +301 -0
- aikit/tests/test_router.py +336 -0
- aikit/tests/test_security_audit.py +237 -0
- aikit/tests/test_strix.py +245 -0
- aikit/tests/test_web_design.py +219 -0
- aikit/tests/wheel_smoke.py +104 -0
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# Consolidated implementation
|
|
2
|
+
|
|
3
|
+
## Scope and decisions
|
|
4
|
+
|
|
5
|
+
The [changelog](../CHANGELOG.md) records evolution; [measurement verification](#measurement-led-development-verification) records v0.11 tooling limits. Earlier results: [v0.6.4](V0_6_4.md), [v0.5.0](V0_5_0.md), [audit disposition](MANUS_REVIEW.md). [Dialogue memory](DIALOGUE_MEMORY.md) records the offline import/review/export contract.
|
|
6
|
+
Historical source evidence: [Windows CI](WINDOWS_CI_FIX.md). Current facts: PROJECT_CONTEXT.
|
|
7
|
+
Execution claims require evidence.
|
|
8
|
+
|
|
9
|
+
| Recommendation | Implemented treatment |
|
|
10
|
+
| --- | --- |
|
|
11
|
+
| Repeated policies and excessive startup context | Short AGENTS/Core/bootstrap; conditional profiles, container rules, and provider material; canonical owners below |
|
|
12
|
+
| Template contains kit history | Separate reference root and clean template/; project context and history start unknown; existing documents survive installation |
|
|
13
|
+
| Deterministic installation and upgrades | Offline Python installer: preview, explicit apply, hashes, conflicts, backups, rerun stability, semantic acceptance |
|
|
14
|
+
| Private versus shared use | Private remains default; explicit team mode preserves shared instructions in Git; local state, secrets, overrides, and caches remain private |
|
|
15
|
+
| Universal ignore safety | Separate repository and application policies; Composer exclusions scoped to verified modules; intentional Go vendoring/source and dependency locks stay visible |
|
|
16
|
+
| Monorepos and stack depth | Empty path-to-profile map plus PHP, Laravel, Go, Python, Moodle, frontend, and library profiles; verified versions and commands required |
|
|
17
|
+
| Security, tests, review, migrations | Task-relevant application/dependency checks, realistic unavailable outcomes, safe migration review, project toolchain preservation |
|
|
18
|
+
| Native entry points and skills | Claude import and optional native skill copies; Codex source skills; optional Copilot/Cursor/Aider/Kimi/Manus entries with runtime verification boundary |
|
|
19
|
+
| Provider-specific router details | Shared capability/risk policy; model IDs and supported efforts in reviewed provider JSON; controls and unknown mappings explicit |
|
|
20
|
+
| Model escalation | Latest owner policy retained: inexpensive bounded work, substantive engineering, justified higher-capability escalation; no switching is simulated |
|
|
21
|
+
| License and public maintenance | Owner-selected MIT; CONTRIBUTING, separate reporting SECURITY, version source, checks and CI workflow |
|
|
22
|
+
| Docker CLI and cleanup | [Standalone image](DOCKER.md); read-only cleanup evidence helper, deletion governed by ownership/disposability/size rules |
|
|
23
|
+
| Dogfooding and source accuracy | Root context describes AI-KIT itself; checker validates reference boundaries, anchors, skills, and Git visibility |
|
|
24
|
+
| ADR/change history | Kit ADRs stay under root docs/; clean project ADR/decision templates; CHANGELOG updates remain required after tasks changing files |
|
|
25
|
+
|
|
26
|
+
Owner defaults remain: English files/Russian chat, Laravel conventions, explicit commits/pushes, Docker preflight, Kubernetes readiness and cleanup threshold. Installation can select another chat language or standard conventions without converting existing code.
|
|
27
|
+
|
|
28
|
+
## Policy ownership
|
|
29
|
+
|
|
30
|
+
| Policy | Canonical owner |
|
|
31
|
+
| --- | --- |
|
|
32
|
+
| Language, Git authorization, verified facts | [Core](../template/ai-kit/CORE.md) |
|
|
33
|
+
| User/project selections | [Settings](../template/ai-kit/settings.json) |
|
|
34
|
+
| Work cycle, tests/review/docs/migrations | [Engineering](../template/ai-kit/ENGINEERING.md) |
|
|
35
|
+
| Security implementation checks | [Security baseline](../template/ai-kit/SECURITY.md) |
|
|
36
|
+
| Optional security workflows | [Cloudflare](../template/ai-kit/SECURITY-AUDIT.md), [Strix](../template/ai-kit/STRIX.md) |
|
|
37
|
+
| Container design and cleanup threshold | [Containers](../template/ai-kit/CONTAINERS.md) |
|
|
38
|
+
| Owner Laravel conventions | [Owner profile](../template/ai-kit/profiles/OWNER.md) |
|
|
39
|
+
| Stack practices | [Stack directory](../template/ai-kit/stacks), including Filament |
|
|
40
|
+
| Routing and provider controls | [Router](../template/ai-kit/router/POLICY.md) and relevant provider |
|
|
41
|
+
| Optional local measurement contract | [Metrics](../template/ai-kit/METRICS.md) |
|
|
42
|
+
| Generated client settings, scoped module rules, presets | [Adapters](../template/ai-kit/ADAPTERS.md#optional-install-extras), [secret list](../templates/agent-secrets.ignore), installer |
|
|
43
|
+
| Provider selection, optional modes/profiles/pins and measured routing | [selection.json](../template/ai-kit/router/selection.json), [routing.json](../template/ai-kit/router/routing.json), [router.py](../scripts/router.py), [adaptive.py](../scripts/adaptive.py), [learning.py](../scripts/learning.py) |
|
|
44
|
+
| Benchmark execution, telemetry and semantic acceptance | [benchmark contract](BENCHMARK.md), [benchmark helper](../scripts/benchmark.py), [Metrics](../template/ai-kit/METRICS.md) |
|
|
45
|
+
| Client evidence and conservative adapter retirement | [agent registry](../integrations/agents.json), [adapters helper](../scripts/adapters.py), [Adapters](../template/ai-kit/ADAPTERS.md) |
|
|
46
|
+
| Project-fact evidence and pair-coverage evaluation | [context helper](../scripts/context.py), [evaluation helper](../scripts/evaluate.py), [Metrics](../template/ai-kit/METRICS.md) |
|
|
47
|
+
| Local dialogue import, conflict review and reference exports | [Contract](DIALOGUE_MEMORY.md), [memory CLI](../scripts/memory.py) |
|
|
48
|
+
| MCP trust boundary and documentation workflow | [MCP](../template/ai-kit/MCP.md), [Security](../template/ai-kit/SECURITY.md), [Context7](../template/ai-kit/CONTEXT7.md) |
|
|
49
|
+
| Optional visual workflow and UI implementation | [Web Design](../template/ai-kit/WEB-DESIGN.md), conditional [guides](../template/ai-kit/web-design); project-owned docs/design records actual choices/evidence |
|
|
50
|
+
| Installation/upstream reconciliation | [Bootstrap](../template/ai-kit/BOOTSTRAP.md), [upstream](../template/ai-kit/UPSTREAM.md), installer state |
|
|
51
|
+
| Current project facts and navigation | Installed PROJECT_CONTEXT, WIKI, and ai-kit/project.json |
|
|
52
|
+
| Context maintenance procedure | [Continuity skill](../template/.agents/skills/project-continuity/SKILL.md) |
|
|
53
|
+
|
|
54
|
+
Entry points link to policy owners; historical ADRs do not activate superseded rules.
|
|
55
|
+
|
|
56
|
+
## Deferred with reasons
|
|
57
|
+
|
|
58
|
+
- Exchange/trading-specific profile: no confirmed domain requirement; the library profile covers reusable code without introducing trading assumptions.
|
|
59
|
+
- Executable Docker cleanup: an inspection report cannot establish exact project bytes, exclusive builder ownership, and disposability by itself. Keep the existing actionable policy; add automation after representative resource fixtures and live trials.
|
|
60
|
+
- Runtime guards and automatic model switching: clients expose different controls. The opt-in Claude Code ask rules are supplementary confirmation, not a proven universal Git ban; other clients receive no guard.
|
|
61
|
+
- Context/token cost claims: byte budgets are measured, but no tokenizer, runtime-loaded-context benchmark, or performance comparison has been run.
|
|
62
|
+
- Additional model/client mappings: unsupported provider IDs and runtime settings remain unknown; no speculative model names or fake activation.
|
|
63
|
+
- Codex nested AGENTS.md and config.toml: Codex reads AGENTS.md only from the root to its working directory, and approval/sandbox settings are user decisions; Roo has no documented path-scoped rules.
|
|
64
|
+
- Topics, homepage, hosted publication, tags/releases: these require remote changes; local work does not authorize them. The current repository description and MIT were independently confirmed; a homepage is unnecessary for the first usable bundle.
|
|
65
|
+
- PyPI publication needs explicit authorization. [Repository administration](../CONTRIBUTING.md#repository-maintenance).
|
|
66
|
+
- Real-project trials: synthetic fixtures do not replace actual applications or hosted CI; [Docker results](DOCKER.md#verification-results) record local Linux checks.
|
|
67
|
+
|
|
68
|
+
## Verification
|
|
69
|
+
|
|
70
|
+
Historical links are revision-specific.
|
|
71
|
+
Optional integration checks: [security-audit](SECURITY_AUDIT.md), [Strix](STRIX.md).
|
|
72
|
+
|
|
73
|
+
### Measurement-led development verification
|
|
74
|
+
|
|
75
|
+
The [plan](DEVELOPMENT_PLAN.md), [benchmark contract](BENCHMARK.md) and [ADR 0012](adr/0012-measurement-led-routing.md) cover v0.11.0. Behavioral checks ran before release labeling, on Windows/Python 3.12.14 with external fixtures because sandbox TEMP was unavailable.
|
|
76
|
+
|
|
77
|
+
- Full discovery: 248 tests in 1700.396 seconds; 244 passed, four skipped (POSIX shell, symlink creation, two junction fixtures).
|
|
78
|
+
- Post-review: 70 learning/metrics/router/CLI checks passed. Benchmark exposed an ineffective Git ceiling at cwd; using its parent fixed discovery. All six benchmark checks then passed, including source preservation, review/export and unknown/timeout telemetry.
|
|
79
|
+
- Kit: zero errors/warnings. Python 3.10 grammar: all 32 CLI/script/test files passed; execution on 3.10 remains unverified.
|
|
80
|
+
- Upgrade from actual tracked v0.10.0 preserved PROJECT_CONTEXT, project.json, selection and schema-2 journal bytes; modified routing survived a stable rerun.
|
|
81
|
+
- Offline wheel: 178 files, no private journals/caches. External fresh-venv installation without dependencies/network passed imports, route/help, validation, install/doctor, adapter report and context selection; installed validation had zero errors/warnings.
|
|
82
|
+
- Release labeling: seven CLI checks passed; VERSION and wheel metadata agree at 0.11.0. The rebuilt wheel passed external install smoke; kit had zero errors/warnings.
|
|
83
|
+
- Self-review covered boundaries/links, read-only obstructions, visibility, conflicts/locks, paired quality/cost, pins/provider availability and critical context. Synthetic workers establish no model result.
|
|
84
|
+
|
|
85
|
+
Owner deferred application/model calls; native/MCP activation, live switching and orchestration remain unverified. This section records historical checks; current version/facts are in PROJECT_CONTEXT.
|
|
86
|
+
|
|
87
|
+
### v0.10.0 release preparation
|
|
88
|
+
|
|
89
|
+
v0.10.0 adds schema-2 metric dispositions and corrected A/B identity, manifest-evidence snapshots and doctor drift reporting, client registry evidence plus conservative retirement, opaque evaluation pair coverage, MCP posture, and portable-wheel CI jobs. Its initial preparation established no checker/unit/build/wheel-smoke result (no shell Python); later bundled-runtime checks cover v0.11.0-v0.12.0 preparation, not pristine v0.10.0. Hosted CI and native client/MCP activation remain unverified.
|
|
90
|
+
|
|
91
|
+
### Early distribution verification
|
|
92
|
+
|
|
93
|
+
[Historical results](history/verification-before-measurements.md#early-distribution-verification).
|
|
94
|
+
|
|
95
|
+
### Router and agent-registry verification
|
|
96
|
+
|
|
97
|
+
[Historical results](history/verification-before-measurements.md#router-and-agent-registry-verification).
|
|
98
|
+
|
|
99
|
+
### Client settings and detection verification
|
|
100
|
+
|
|
101
|
+
[Historical results](history/verification-before-measurements.md#client-settings-and-detection-verification).
|
|
102
|
+
|
|
103
|
+
### Onboarding and project-facts verification
|
|
104
|
+
|
|
105
|
+
[Historical results](history/verification-before-measurements.md#onboarding-and-project-facts-verification).
|
|
106
|
+
|
|
107
|
+
### Unified CLI and fact-drift verification
|
|
108
|
+
|
|
109
|
+
[Historical results](history/verification-before-measurements.md#unified-cli-and-fact-drift-verification).
|
|
110
|
+
|
|
111
|
+
### Provider review and doctor-fix verification
|
|
112
|
+
|
|
113
|
+
[Historical results](history/verification-before-measurements.md#provider-review-and-doctor-fix-verification).
|
|
114
|
+
|
|
115
|
+
### Measurement analysis and Gemini verification
|
|
116
|
+
|
|
117
|
+
[Historical results](history/verification-before-measurements.md#measurement-analysis-and-gemini-verification).
|
|
118
|
+
|
|
119
|
+
### Windows CI fixture verification
|
|
120
|
+
|
|
121
|
+
[Historical results](history/verification-before-measurements.md#windows-ci-fixture-verification).
|
|
122
|
+
|
|
123
|
+
### Manus patch verification
|
|
124
|
+
|
|
125
|
+
[Historical results](history/verification-before-measurements.md#manus-patch-verification).
|
|
126
|
+
|
|
127
|
+
### Overlay regression
|
|
128
|
+
|
|
129
|
+
[Historical results](history/verification-before-measurements.md#overlay-regression).
|
|
130
|
+
|
|
131
|
+
### Original bundle checks
|
|
132
|
+
|
|
133
|
+
[Historical results](history/verification-before-measurements.md#original-bundle-checks).
|
|
134
|
+
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Manus audit disposition
|
|
2
|
+
|
|
3
|
+
Review date: 2026-10-08. Working patch: [VERSION](../VERSION), prepared locally.
|
|
4
|
+
The supplied Manus audit targets published main at 73707036c1098d8c1c81ab2c51d723c3d521f6b8 (v0.2). It does not evaluate the local v0.2.1 overlay fix or the expanded README.
|
|
5
|
+
|
|
6
|
+
## Evidence and scope
|
|
7
|
+
|
|
8
|
+
- The published snapshot was previously rebuilt from all 91 tracked blobs with matching Git object hashes. Its checker reproduced the five missing-heading errors and the oversized MODELS warning.
|
|
9
|
+
- GitHub's API reported [run 37810446904](https://github.com/tigusigalpa/ai-kit/actions/runs/37810446904) as completed/failure for that SHA. No successful hosted run of this patch has been established.
|
|
10
|
+
- Separate temporary-project reproductions against local v0.2.1 confirmed edited-candidate overwrite, retained Claude files losing their baseline records, and an unsupported/mixed-type state causing an uncaught TypeError.
|
|
11
|
+
- The audit's reported 31-passed/2-failed suite is reviewer evidence; it is not presented as our independently executed old-version suite.
|
|
12
|
+
|
|
13
|
+
## Decisions
|
|
14
|
+
|
|
15
|
+
| Finding | Disposition |
|
|
16
|
+
| --- | --- |
|
|
17
|
+
| P0: stale root anchors and failed CI | Already corrected locally in v0.2.1 with compact compatibility pointers. Published main still needs the patch and successful hosted validation. |
|
|
18
|
+
| P1: edited candidates overwritten | Fixed in v0.2.2: candidates use the incoming file's SHA-256 directory; exclusive creation preserves every existing file. Preview exposes paths and hashes; metadata records the first observation. |
|
|
19
|
+
| P1: agent changes orphan adapters | Fixed with a review conflict when tracked unselected adapters remain. Accepted files/state stay unchanged; exact paths are reported. Custom/untracked entries produce warnings. No automatic deletion or add/remove CLI redesign. |
|
|
20
|
+
| P2: invalid installer state/types | Fixed with schema/type/hash/path checks before planning. Unknown schema or corrupt input produces a controlled refusal, without blanket exception suppression. |
|
|
21
|
+
| P2: two active policy layers | Already corrected locally: old reference paths are pointers, canonical application policies are in template/. Old source history remains distinguishable from active policy. |
|
|
22
|
+
| P2: permanent verification claims | Results below and in IMPLEMENTATION are dated bundle snapshots. Source-read revisions, local patch versions, and hosted results remain separate. |
|
|
23
|
+
| P3: integration coverage | Added an existing mixed Go/Composer/Python fixture with local AGENTS/README/ignore rules and real installed Git private/team checks; retained upgrade/backup/rollback scenarios and added previous-version state coverage. |
|
|
24
|
+
| P3: Windows linked paths | Added a Windows junction fixture and detection using lstat reparse tags available on Python 3.10. Real junction execution remains dependent on host permissions. |
|
|
25
|
+
| P3: obtaining the kit | README includes clone/open instructions and requires a reviewed revision. It does not advertise a nonexistent release tag. |
|
|
26
|
+
|
|
27
|
+
Candidate metadata is not a live ledger: its local hash and timestamp describe first creation. Later preview reports current local hashes and edited-draft mismatches. A source-file hash is not an upstream Git SHA, and storing a candidate does not accept an installation.
|
|
28
|
+
|
|
29
|
+
Adapter retirement is deliberately manual in this patch. Retaining the old agent selection is the immediate way to keep its files managed. After reviewing and preserving local work, retire only the listed managed files and rerun preview; custom skills/settings require separate review.
|
|
30
|
+
|
|
31
|
+
## Public metadata and deferred work
|
|
32
|
+
|
|
33
|
+
The repository API confirmed main as default branch, an English description, MIT, empty topics/homepage, no releases, and no matching tag refs at review time. The audit's Community Profile percentage and master/docs documentation URL were not independently verified; an empty repository homepage is not proof of that separate URL claim.
|
|
34
|
+
|
|
35
|
+
Publication requires a separate explicit request. Before a first release: publish the reviewed patch, obtain a successful full hosted matrix, then choose a tag matching VERSION and prepare release notes/checksums. Do not publish the audit's proposed old v0.2.0 tag as if it contained these fixes.
|
|
36
|
+
Topics and any documentation URL can be reviewed then. A Code of Conduct requires an owner-selected policy/contact; issue/PR forms and release automation are useful later, but do not resolve the reproduced installer failures.
|
|
37
|
+
|
|
38
|
+
Full add/remove/replace adapter commands are deferred until their safe deletion and custom-file ownership contracts are designed. The blocking retirement conflict supplies the audit's minimum safe behavior now.
|
|
39
|
+
|
|
40
|
+
## Verification
|
|
41
|
+
|
|
42
|
+
The final local checks and execution limits are recorded in [the implementation record](IMPLEMENTATION.md#manus-patch-verification).
|
|
43
|
+
The mixed-project fixtures use synthetic manifests/locks; they do not run Laravel, Composer, Go builds, or Python dependency installation and are not real application trials.
|
|
44
|
+
Docker tests remain simulated read-only checks. Native instruction activation, live model switching, real Docker cleanup, and hosted success are not inferred from these tests.
|
|
45
|
+
|
|
46
|
+
No commit, push, tag, release, or remote settings write was performed.
|
aikit/docs/PYPI.md
ADDED
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# PyPI package preparation and release
|
|
2
|
+
|
|
3
|
+
## Status and package identity
|
|
4
|
+
|
|
5
|
+
Release 1.4.2 is prepared for authorized PyPI publication on 2026-10-16; [release status](V1_4_2.md) records verification. PyPI registered a pending Trusted Publisher for `ai-kit-python`, repository `tigusigalpa/ai-kit`, workflow `publish-pypi.yml`, environment `pypi`. The GitHub environment allows only tag `v1.4.2` with owner review. No upload or hosted workflow run is established yet. VERSION is the version source; import package and executable are `aikit`. Python 3.10+ is required with no runtime dependencies.
|
|
6
|
+
|
|
7
|
+
PyPI rejected `ai-kit` and `ai-kit-cli` as too similar to existing projects; the owner selected `ai-kit-python`, whose pending-publisher registration succeeded. A public JSON 404 alone does not establish eligibility, and a pending publisher does not reserve a name. For a rename synchronize pyproject, archive checks, metadata smoke tests, workflow URLs, publisher configuration and install examples before rebuilding.
|
|
8
|
+
|
|
9
|
+
[pyproject.toml](../pyproject.toml) owns metadata. [PYPI_DESCRIPTION.md](PYPI_DESCRIPTION.md) is the complete Markdown description, with absolute public links and no GitHub-only diagrams. AI-KIT's own code remains MIT; the distribution also bundles Apache-2.0 Strix resources, so its SPDX expression is `MIT AND Apache-2.0`. All three declared license files are included under wheel dist-info/licenses and retained beside their payload resources.
|
|
10
|
+
|
|
11
|
+
## Install before and after publication
|
|
12
|
+
|
|
13
|
+
Before the first authorized upload, use a reviewed checkout and a virtual environment:
|
|
14
|
+
|
|
15
|
+
~~~powershell
|
|
16
|
+
$cliEnv = Join-Path $env:LOCALAPPDATA 'AI-KIT\venv'
|
|
17
|
+
python -m venv "$cliEnv"
|
|
18
|
+
& "$cliEnv\Scripts\Activate.ps1"
|
|
19
|
+
python -m pip install .
|
|
20
|
+
aikit --version
|
|
21
|
+
~~~
|
|
22
|
+
|
|
23
|
+
Keep that environment local; it is not an application dependency. After publication, users can run `pipx install ai-kit-python`, or `python -m pip install ai-kit-python` in a virtual environment. Update via `pipx upgrade ai-kit-python` or `python -m pip install --upgrade ai-kit-python`. Upgrading the CLI does not rewrite installed project instructions: preview `aikit install TARGET` and apply after review. [Usage](../README.md#packaged-cli-and-pypi-status).
|
|
24
|
+
|
|
25
|
+
## Build and validate without uploading
|
|
26
|
+
|
|
27
|
+
Use an isolated checkout/source copy and an output directory outside it. This keeps archive binaries, temporary metadata and private maintainer files away from source validation and test fixture copies. Example from that source copy in PowerShell:
|
|
28
|
+
|
|
29
|
+
~~~powershell
|
|
30
|
+
$releaseEnv = Join-Path ([System.IO.Path]::GetTempPath()) ('ai-kit-build-env-' + [guid]::NewGuid())
|
|
31
|
+
python -m venv "$releaseEnv"
|
|
32
|
+
& "$releaseEnv\Scripts\Activate.ps1"
|
|
33
|
+
python -m pip install --require-hashes -r docker/build-requirements.txt
|
|
34
|
+
python -m pip install -r docker/pypi-requirements.txt
|
|
35
|
+
|
|
36
|
+
python scripts/check_kit.py
|
|
37
|
+
python -m unittest discover -s tests -v
|
|
38
|
+
|
|
39
|
+
$distPath = Join-Path ([System.IO.Path]::GetTempPath()) ('ai-kit-dist-' + [guid]::NewGuid())
|
|
40
|
+
python tests/build_distribution.py "$distPath"
|
|
41
|
+
python scripts/check_distribution.py archives "$distPath"
|
|
42
|
+
python -m twine check --strict "$distPath/*"
|
|
43
|
+
python tests/wheel_smoke.py "$distPath"
|
|
44
|
+
~~~
|
|
45
|
+
|
|
46
|
+
Use separate commands or stop on each nonzero exit. The build helper copies public source inputs into a disposable directory, injects synthetic private files, runs `build` to create sdist then wheel from sdist, and rejects leaked markers. Output inside the checkout or mixed with old archives refuses. The archive checker inspects paths without extracting, confirms metadata/version, description, CLI, resources, licenses and private-file exclusions, and reports SHA-256. Fresh-venv smoke exercises the installed CLI, optional resources and dialogue pipeline offline. Also check Python 3.10 compatibility and preserve the cross-platform CI matrix. Synthetic probes never read real credentials or conversations.
|
|
47
|
+
|
|
48
|
+
The source checker and publication identity helper upload nothing:
|
|
49
|
+
|
|
50
|
+
~~~sh
|
|
51
|
+
python scripts/check_distribution.py identity
|
|
52
|
+
~~~
|
|
53
|
+
|
|
54
|
+
## Trusted Publishing configuration
|
|
55
|
+
|
|
56
|
+
[publish-pypi.yml](../.github/workflows/publish-pypi.yml) has only a manual workflow_dispatch trigger. Its default destination is `validate`, which builds/tests/retains artifacts and skips both upload jobs. Pushes, pull requests and GitHub releases do not trigger publishing. The existing required validation/wheel job names remain unchanged.
|
|
57
|
+
|
|
58
|
+
Configure these account settings separately when publication is authorized. PyPI and TestPyPI are separate services/accounts; use a pending publisher for a new project or add a publisher to an owned project.
|
|
59
|
+
|
|
60
|
+
| Field | Production | Test registry |
|
|
61
|
+
| --- | --- | --- |
|
|
62
|
+
| Registry | pypi.org | test.pypi.org |
|
|
63
|
+
| Project name | ai-kit-python | ai-kit-python, subject to availability |
|
|
64
|
+
| GitHub owner | tigusigalpa | tigusigalpa |
|
|
65
|
+
| Repository | ai-kit | ai-kit |
|
|
66
|
+
| Workflow filename | publish-pypi.yml | publish-pypi.yml |
|
|
67
|
+
| Environment | pypi | testpypi |
|
|
68
|
+
|
|
69
|
+
Create the exact GitHub environments in repository settings, restrict deployment refs to approved release tags and enable required reviewers where supported. Keep publisher environment names identical. Do not store a PyPI API token: the pinned PyPA action exchanges GitHub OIDC identity for a short-lived token. Only the upload jobs receive `id-token: write`; the build/test job has read-only repository access. Upload jobs retrieve the validated same-run artifact, check out no repository code and perform no build.
|
|
70
|
+
|
|
71
|
+
## Later authorized publication
|
|
72
|
+
|
|
73
|
+
1. Review VERSION, metadata, description, README examples, license files, tool/action pins and changes since the prior release. Complete local checks, including image-impact handling. Any Git commit/tag/push still requires its own authorization. Preserve existing tags: if a release tag predates publication support, prepare a new patch version instead of moving it.
|
|
74
|
+
2. After the reviewed workflow exists on the default branch, a `validate` dispatch can exercise hosted build-only preparation. Hosted results remain unknown until that run finishes.
|
|
75
|
+
3. For an upload, select the reviewed `vVERSION` tag, explicitly choose `testpypi` or `pypi`, and type the exact VERSION as confirmation. The guard rejects branches, other versions, missing confirmation and noncanonical repositories before artifact building. Each registry uses its own environment/publisher; production does not automatically upload to TestPyPI.
|
|
76
|
+
4. TestPyPI is the recommended first external trial. After an explicitly authorized trial, install the exact version in a fresh environment using `--index-url https://test.pypi.org/simple/ --no-deps`, inspect the CLI/resources and compare downloaded hashes. Do not mix TestPyPI and PyPI using an extra index.
|
|
77
|
+
5. After production upload, verify the public version, metadata, files, SHA-256 hashes and fresh isolated installation from PyPI. Record registry evidence separately from prepared local hashes; update publication status/examples only after read-back. Duplicate uploads fail rather than silently skipping a file.
|
|
78
|
+
|
|
79
|
+
No workflow is dispatched and no account/environment is configured by merely committing these files. Keep local preparation, hosted checks, registry activation and actual publication distinct. The candidate version must not be described as available on PyPI until verified.
|
|
80
|
+
|
|
81
|
+
## Docker and documentation continuity
|
|
82
|
+
|
|
83
|
+
Packaging metadata, description selection and bundled resource changes affect the CLI image: rebuild/test `ai-kit:dev`, verify new resources/version and preserve published release identities. Docker publication is separate. Follow [image refresh](DOCKER.md#change-impact-and-image-refresh) and the [Docker Hub checklist](../CONTRIBUTING.md#docker-hub-releases) when preparing an image release. Publication receipts alone may retain the tested image snapshot; record that boundary.
|
|
84
|
+
|
|
85
|
+
For every Python package release, refresh metadata/description/README, run archive checks, strict Twine validation and offline installation, and record unavailable OS/runtime checks. [Contribution rules](../CONTRIBUTING.md#python-package-releases) own the release-maintenance trigger.
|
|
86
|
+
|
|
87
|
+
Primary sources checked on 2026-10-16: [project metadata](https://packaging.python.org/en/latest/guides/writing-pyproject-toml/), [license expressions](https://packaging.python.org/en/latest/specifications/license-expression/), [PyPI descriptions](https://packaging.python.org/en/latest/guides/making-a-pypi-friendly-readme/), [pending publishers](https://docs.pypi.org/trusted-publishers/creating-a-project-through-oidc/), [OIDC publication](https://docs.pypi.org/trusted-publishers/using-a-publisher/), [PyPA action](https://github.com/pypa/gh-action-pypi-publish).
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# AI-KIT
|
|
2
|
+
|
|
3
|
+
Portable project instructions, verified context and reusable skills for AI coding agents.
|
|
4
|
+
|
|
5
|
+
AI-KIT installs a shared instruction layer into an application repository. It gives agents a project module map, stack guidance, engineering workflows and explicit authorization rules. The installer previews changes, preserves existing project documents and reports conflicts before applying an upgrade.
|
|
6
|
+
|
|
7
|
+
The `ai-kit-python` distribution exposes the `aikit` command. Python 3.10 or later is required; the runtime uses only the standard library. Git supports repository evidence and visibility checks. Application toolchains and AI clients are installed separately.
|
|
8
|
+
|
|
9
|
+
## Install the CLI
|
|
10
|
+
|
|
11
|
+
For an isolated command-line installation with pipx:
|
|
12
|
+
|
|
13
|
+
```sh
|
|
14
|
+
pipx install ai-kit-python
|
|
15
|
+
aikit --version
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Or install into a Python virtual environment:
|
|
19
|
+
|
|
20
|
+
```sh
|
|
21
|
+
python -m venv .venv
|
|
22
|
+
# Activate the environment using your operating system's activation command.
|
|
23
|
+
python -m pip install ai-kit-python
|
|
24
|
+
aikit --help
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
The package name is `ai-kit-python`; the executable is `aikit`. Installing the CLI does not modify an application project until you run the installer with `--apply`.
|
|
28
|
+
|
|
29
|
+
## Preview, install and initialize
|
|
30
|
+
|
|
31
|
+
Choose an existing application folder, then preview:
|
|
32
|
+
|
|
33
|
+
```sh
|
|
34
|
+
aikit install /path/to/my-app --agent codex --mode private
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Review the proposed files and any conflicts. Apply the same selection:
|
|
38
|
+
|
|
39
|
+
```sh
|
|
40
|
+
aikit install /path/to/my-app --agent codex --mode private --apply --check
|
|
41
|
+
aikit doctor /path/to/my-app
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
On Windows, use a quoted path such as `"C:\Projects\my-app"`. Add `--agent claude` for Claude Code or choose another supported adapter. Private mode keeps new kit configuration local through ignore policies; team mode shares project instructions. Existing tracked files remain tracked until explicitly untracked.
|
|
45
|
+
|
|
46
|
+
Open the application in your AI client and invoke `$ai-kit-bootstrap` in Codex or `/ai-kit-bootstrap` in Claude Code. Bootstrap verifies installer drafts against the repository and fills project context from evidence. Other clients can use the [bootstrap prompt](https://github.com/tigusigalpa/ai-kit/blob/main/BOOTSTRAP_PROMPT.md).
|
|
47
|
+
|
|
48
|
+
## Capabilities
|
|
49
|
+
|
|
50
|
+
- **Project context:** verified facts, module maps, commands, decisions and continuity instructions.
|
|
51
|
+
- **Client adapters:** Codex, Claude Code, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, Roo, Aider, Kimi and Manus. Actual discovery and activation depend on the client.
|
|
52
|
+
- **Stack guidance:** Go, PHP, Laravel, Filament, Moodle, Python, frontend, libraries, Rust, .NET, Java and Terraform/Helm, selected from project evidence.
|
|
53
|
+
- **Conservative upgrades:** existing documents, settings and local adaptations are preserved; conflicts remain reviewable.
|
|
54
|
+
- **Engineering workflows:** plan, implement, test, review and document, with explicit Git authorization.
|
|
55
|
+
- **Routing and measurement:** offline recommendations, context selection, metrics and benchmark scaffolding. Live execution needs a separately configured worker.
|
|
56
|
+
- **Container guidance:** non-root execution, lifecycle, image freshness, mounts and Kubernetes readiness appropriate to the workload.
|
|
57
|
+
|
|
58
|
+
## Optional integrations
|
|
59
|
+
|
|
60
|
+
Enable these modules explicitly in both preview and apply:
|
|
61
|
+
|
|
62
|
+
| Option | Included guidance |
|
|
63
|
+
| --- | --- |
|
|
64
|
+
| `--with-web-design` | References and briefs, visual systems, UI implementation and acceptance, including a Blade route. |
|
|
65
|
+
| `--with-context7` | Version-aware documentation lookup; MCP setup is separate. |
|
|
66
|
+
| `--with-security-audit` | Pinned Cloudflare security-audit resources with an explicit entry point. |
|
|
67
|
+
| `--with-strix` | Pinned Strix workflow skills with an explicit entry point. |
|
|
68
|
+
|
|
69
|
+
```sh
|
|
70
|
+
aikit install /path/to/my-app --agent codex --agent claude --with-web-design --with-context7
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
Installation runs no audit, security scan, external tool setup or model call. These modules are independent of installation presets.
|
|
74
|
+
|
|
75
|
+
## Shared dialogue context
|
|
76
|
+
|
|
77
|
+
`aikit memory import`, `merge` and `export` work locally with two conversations. Supported inputs include selected ChatGPT JSON branches, messages JSON and UTF-8 text/Markdown transcripts. The workflow preserves source references, prepares human review and records explicit keyed contradictions.
|
|
78
|
+
|
|
79
|
+
Reviewed exports provide ChatGPT Markdown and an OpenRouter JSON request fragment. Pending claims block normal exports; explicit draft exports retain unresolved material. Free-form semantic disagreements require human review. The CLI does not connect accounts, synchronize chat histories or send API requests.
|
|
80
|
+
|
|
81
|
+
```sh
|
|
82
|
+
aikit memory --help
|
|
83
|
+
aikit context --help
|
|
84
|
+
aikit route "review an interface"
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
## Updates and distribution privacy
|
|
88
|
+
|
|
89
|
+
Update the CLI with `pipx upgrade ai-kit-python`, or `python -m pip install --upgrade ai-kit-python` inside its virtual environment. Preview the installer against an existing project before applying an upgrade. Updating the CLI alone does not rewrite installed application instructions.
|
|
90
|
+
|
|
91
|
+
The distribution excludes root maintainer AGENTS.md, PROJECT_CONTEXT.md and WIKI.md, plus private dialogue/metrics/cache paths. Application template counterparts remain included. Secrets and raw project conversations belong outside distribution sources; review exported data before sharing.
|
|
92
|
+
|
|
93
|
+
A separate [Docker image](https://hub.docker.com/r/tigusigalpa/ai-kit) packages the CLI for container use.
|
|
94
|
+
|
|
95
|
+
## Documentation and license
|
|
96
|
+
|
|
97
|
+
- [Repository and full README](https://github.com/tigusigalpa/ai-kit)
|
|
98
|
+
- [Installation and upgrades](https://github.com/tigusigalpa/ai-kit#install)
|
|
99
|
+
- [Web Design](https://github.com/tigusigalpa/ai-kit#web-design)
|
|
100
|
+
- [Dialogue context](https://github.com/tigusigalpa/ai-kit#shared-context-from-two-dialogues)
|
|
101
|
+
- [Issues](https://github.com/tigusigalpa/ai-kit/issues)
|
|
102
|
+
|
|
103
|
+
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.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Optional security-audit integration
|
|
2
|
+
|
|
3
|
+
The owner requested an optional, pinned skill with a short entry point and explicit invocation. Current scope is integration and tests; full audits remain separately requested.
|
|
4
|
+
|
|
5
|
+
## Ownership and installation
|
|
6
|
+
|
|
7
|
+
- [Upstream manifest](../integrations/security-audit.json) is the canonical revision/file identity: Cloudflare commit c1c8a8c1471069fb0e188eeaff69b8e8db6564a8, 20 skill files plus the upstream MIT license. Each imported blob was verified against the Git tree; the installer also validates byte size, Git blob SHA-1 and SHA-256 before selecting writes.
|
|
8
|
+
- Original bytes live in template/ai-kit/vendor/security-audit. [.gitattributes](../.gitattributes) disables newline conversion there. The checker exempts only manifest-verified conditional references from document-size warnings and authored-language checks (upstream tests contain exact Unicode fixtures); authored entry points retain their normal rules. UTF-8, metadata and links still receive checks.
|
|
9
|
+
- [Installer](../scripts/install.py) adds --with-security-audit and the persisted security_audit setting, outside every preset. Defaults remain unchanged. Optional source/native entry points and vendor files are omitted when unselected; the installed skill registry omits their link too.
|
|
10
|
+
- [Source entry point](../template/.agents/skills/security-audit/SKILL.md) defers to Core and the pinned method. Codex gets agents/openai.yaml with allow_implicit_invocation=false. Claude gets the same body with disable-model-invocation=true. Supporting files are not copied into native skill directories.
|
|
11
|
+
- The selected payload uses existing backup/baseline/conflict handling. Deselecting retains and reports managed files; removing a native client with tracked files still blocks until retirement is reviewed. Reports and audit execution are not installer outputs.
|
|
12
|
+
|
|
13
|
+
Installed-project usage and limitations: [security-audit contract](../template/ai-kit/SECURITY-AUDIT.md).
|
|
14
|
+
Invocation metadata follows [official OpenAI documentation](https://learn.chatgpt.com/docs/build-skills) and [Claude skills](https://code.claude.com/docs/en/skills), checked 2026-10-12. File installation does not establish native discovery or runtime isolation.
|
|
15
|
+
|
|
16
|
+
## Verification
|
|
17
|
+
|
|
18
|
+
- Targeted Windows/Python 3.12.14 integration tests: 14 passed, covering absent defaults/presets, process/network-free preview/apply, explicit client metadata, links/doctor, persistence, reviewed synthetic pin upgrades, adaptations/conflicts/candidates/backups, retained deselection, native retirement, invalid metadata, digest failures and linked source/target refusal.
|
|
19
|
+
- Native Windows/Node.js 24.17.0 upstream tests exposed unsupported OS no-follow/nonblocking input opens. Keep the upstream rejection intact; native Windows CLI findings-validation tests cannot pass on this runtime. This is not evidence of a ready full-audit environment.
|
|
20
|
+
- Upstream full Windows run: 65 tests, 46 passed, seven CLI assertions failed because file opening is refused, 12 skipped. A separate run excluding CLI-named tests passed 44 in-memory checks with four runtime skips; 17 CLI-named tests were excluded, not counted as passed. POSIX Node was unavailable in the installed Ubuntu distribution and no cached Node Docker image was present; no runtime was installed.
|
|
21
|
+
- Kit validation passed with zero errors/warnings, including private/team visibility. All 21 upstream Git blobs also matched with core.autocrlf=true. Changed Python files passed Python 3.10 grammar; the short skill passed skill-creator's quick validator using installed Ubuntu Python/PyYAML 6.0.3.
|
|
22
|
+
- A wheel built offline without build isolation or new dependencies passed external Windows fresh-venv installation: CLI/imports, packaged kit validation, default install/doctor, optional Codex/Claude audit-file install/doctor and stable rerun. This does not establish Linux/macOS wheel execution or native client activation for these changes.
|
|
23
|
+
- Full Windows/Python 3.12.14 discovery: 271 tests in 991.952 seconds, 267 passed and four runtime skips (POSIX hook execution, symlink creation, two junction scenarios). Post-review package-name checks passed after rejecting traversal, case-fold aliases and collision with generated UPSTREAM.json; Python 3.10 grammar passed again. The earlier wheel smoke preceded that narrow manifest-name hardening.
|
|
24
|
+
- Self-review covered default/preset omission, persisted choices, source/native policy and paths, independent-review wording, license/provenance, backups/conflicts/candidates, symlinks/path boundaries, registry links, private/team visibility and packaged resources. The v0.10.0 changelog entry moved to the history archive to keep the root document within its budget.
|
|
25
|
+
- No full audit, live target, model run, external publication or native client activation is established.
|
|
26
|
+
- Included alongside Strix in [v1.1.0](../CHANGELOG.md#v110-2026-10-12). Release checks verified CLI/wheel identity, offline fresh-environment installation with both extras, stable rerun and a preserved synthetic upgrade; [shared release verification](STRIX.md#verification). Earlier behavioral/upstream results above were not rerun for documentation/version labeling.
|
aikit/docs/STRIX.md
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Optional Strix integration
|
|
2
|
+
|
|
3
|
+
## Decision and ownership
|
|
4
|
+
|
|
5
|
+
The owner requested Strix alongside the optional security-audit integration. Use the same opt-in, fixed-revision, short-entry-point approach. Strix is an active pentesting runtime; this change integrates its skills and tests installation, without installing that runtime or launching a scan.
|
|
6
|
+
|
|
7
|
+
- [Manifest](../integrations/strix.json) owns the source identity: usestrix/strix revision f7a32ae62d94872631bc8415073868d02a6ffdaf, nine complete skills and Apache-2.0 LICENSE, 85,970 bytes. Each blob was retrieved from that Git tree and verified before writing. No root NOTICE exists at this revision; original license and skill metadata remain intact.
|
|
8
|
+
- Original references live under template/ai-kit/vendor/strix; [.gitattributes](../.gitattributes) preserves their bytes on Windows. [Installer](../scripts/install.py) shares bounded manifest/tree verification with Cloudflare: identity, required files, case-fold aliases and path segments, linked/non-regular paths, one MiB/file and five MiB total limits, sizes, Git blobs and SHA-256. It never fetches or executes upstream code.
|
|
9
|
+
- --with-strix / the boolean strix setting select only this payload. Defaults and preset bundles omit it; presets preserve prior explicit selection. Cloudflare and Strix choices are independent. [Registry](../template/ai-kit/SKILLS.md) entries are filtered when absent.
|
|
10
|
+
- [Short skill](../template/.agents/skills/strix/SKILL.md) is the only discoverable entry point: Codex allow_implicit_invocation=false; Claude disable-model-invocation=true. All nine upstream skills remain conditional references, including cloud and CI instructions. Runtime setup, target execution, publication and fixes remain governed by the user's scope and Core.
|
|
11
|
+
- The installed [contract](../template/ai-kit/STRIX.md) owns mode selection, runtime boundaries and usage. Upstream's floating installer, cloud fallback and model examples do not become defaults. Code targets are writable, so execution uses an isolated reviewed copy; headless scope is selected explicitly to avoid accidentally reviewing only a diff. Local execution can expose code to the chosen model provider.
|
|
12
|
+
- Existing baseline/conflict/candidate/backup behavior manages the selected files. Disabling selection retains/reports old files; native-client retirement still needs explicit review. Nothing removes locally adapted source instructions silently.
|
|
13
|
+
- [Checker](../scripts/check_kit.py) exempts only successfully manifest-verified external references from authored-language, document-size and active-model example restrictions; UTF-8, skill metadata and Markdown links remain checked. Model examples in these references are not active AI-KIT provider selections.
|
|
14
|
+
|
|
15
|
+
## Source evidence
|
|
16
|
+
|
|
17
|
+
Read at the pinned revision on 2026-10-12: [skill workflow](https://github.com/usestrix/strix/blob/f7a32ae62d94872631bc8415073868d02a6ffdaf/skills/penetration-testing-with-strix/SKILL.md), [runtime package](https://github.com/usestrix/strix/blob/f7a32ae62d94872631bc8415073868d02a6ffdaf/pyproject.toml), [CLI flags](https://github.com/usestrix/strix/blob/f7a32ae62d94872631bc8415073868d02a6ffdaf/strix/interface/cli_args.py), [Docker client](https://github.com/usestrix/strix/blob/f7a32ae62d94872631bc8415073868d02a6ffdaf/strix/runtime/docker_client.py) and [mount handling](https://github.com/usestrix/strix/blob/f7a32ae62d94872631bc8415073868d02a6ffdaf/strix/runtime/session_manager.py). The package declares Python >=3.12 and version 1.7.0; this is source metadata, not evidence of an installed or matching published runtime. Docker network capabilities and writable mounts invalidate any assumption of automatically enforced isolation. A reference pin alone does not pin external dependencies or images.
|
|
18
|
+
|
|
19
|
+
## Verification
|
|
20
|
+
|
|
21
|
+
- Full Windows/Python 3.12.14 discovery: 285 tests in 938.375 seconds, 281 passed and four runtime skips (POSIX hook, symlink creation and two junction scenarios). This includes both optional integrations, the unlisted-empty-directory guard, checker regressions and existing installer behavior; no failures.
|
|
22
|
+
- Windows/Python 3.12.14 targeted integration: 12 tests passed in 72.911 seconds. Covered absent defaults/all presets, independent persistent choices, process/network-free preview/apply, complete pin/license, manual source/native metadata, links/doctor, nested upgrades/backups, local adaptations/conflicts/candidates, retained deselection and native retirement, malformed identities/settings, traversal/reserved names/case-fold directory aliases, incomplete trees, linked sources/targets and CLI preview. The later unlisted-empty-directory guard is covered by full discovery.
|
|
23
|
+
- Kit validation passed with zero errors/warnings, including reference and private/team Git visibility. All 10 Strix and 21 Cloudflare blobs also matched with core.autocrlf=true; no upstream bytes were modified. Changed Python files passed Python 3.10 grammar. Strix skill-creator validation passed using existing Ubuntu Python/PyYAML.
|
|
24
|
+
- An additional installed Composer fixture checked all 16 Strix entry-point/reference/metadata paths in private and team modes: private paths were ignored, team paths remained visible, and installed links resolved. The check used NUL-delimited Git path input/output to avoid Windows text-stream newline translation.
|
|
25
|
+
- Offline Windows wheel build without new dependencies/build isolation passed fresh-environment installation, packaged kit validation, default install, both optional payloads with Codex/Claude copies, doctor (zero errors/warnings) and stable rerun. This verifies packaged resources, not Linux/macOS wheel execution or native activation.
|
|
26
|
+
- Self-review covered canonical ownership, preserved defaults and earlier local work, conditional discovery, exact bounded file coverage, path/link refusal, byte preservation/license, independent extras, conflicts/baselines/candidates/backups, retained deselection, client retirement, registry links, visibility and wheel resources. External examples retain their original bytes without becoming active model choices.
|
|
27
|
+
- Strix CLI was not found on the local PATH. No runtime/dependencies/images were installed, and no target, model, container, cloud, CI scan or native client activation was run. Runtime readiness and actual vulnerability results remain unverified.
|
|
28
|
+
- Release labeling as v1.1.0: eight CLI tests passed; CLI version source, wheel filename/metadata and packaged VERSION matched 1.1.0. Rebuilt offline Windows wheel passed fresh-environment default/both-extra installs, doctor and stable rerun. A synthetic 0.13.0-to-1.1.0 upgrade preserved project facts, settings, adapted skill bytes and both pin manifests. The full 285-test run above preceded labeling; this task changed only documentation and VERSION. [Release record](../CHANGELOG.md#v110-2026-10-12).
|
aikit/docs/V0_5_0.md
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# v0.5.0 verification
|
|
2
|
+
|
|
3
|
+
Prepared locally on 2026-10-10. [ADR 0006](adr/0006-routing-evidence-and-local-measurements.md) records scope and tradeoffs; [application evaluation](EVALUATION.md) is prepared for separate trials at the owner's request.
|
|
4
|
+
|
|
5
|
+
## Implemented scope
|
|
6
|
+
|
|
7
|
+
- Routing ladder consistency, English/Russian operation/risk rules, explicit evidence and manual overrides, supported-effort resolution, and transparent recommendation boundaries.
|
|
8
|
+
- Conditional Filament profile/skill, Composer requirement/lock suggestions, module scoping, and preserved owner conventions.
|
|
9
|
+
- Optional local task/attempt measurements, failure/recovery cost accounting, unknown telemetry coverage, duplicate/concurrent-write/path guards, and private journals in both modes. Checker/doctor instruction scans exclude the runtime measurement directory.
|
|
10
|
+
- Adapter file-parent compatibility from the supplied Linux failure; [earlier evidence](ADAPTER_PATH_FIX.md) includes portable POSIX-error regressions.
|
|
11
|
+
- Evaluation methodology for fixed-model A/B instruction trials, minimum context, fresh-session continuation, and a separate routing experiment. No automatic orchestration or live model switch is introduced.
|
|
12
|
+
|
|
13
|
+
## Verification status
|
|
14
|
+
|
|
15
|
+
- Targeted run: 49 tests passed, including the synthetic older-layout upgrade and complete Claude skill retirement/conflict set.
|
|
16
|
+
- Post-review run: 48 router, manifest, and measurement tests passed; the separate installed-project doctor regression passed with unreadable private runtime notes excluded. This covers the final provider-switch and numeric-input guards.
|
|
17
|
+
- Offline kit validation: zero errors, one expected warning for pending Gemini verification. Private/team Git visibility, English content, links, skill registry, template isolation, and document budgets passed.
|
|
18
|
+
- Python 3.10 grammar passed for every script and test; execution used Python 3.12.14. Final diff review covers file preservation, conflicts, path/link guards, registry/copy lifecycle, and upgrades. English-file/Russian-chat, private mode, owner conventions, and provider defaults remain as selected.
|
|
19
|
+
- Full discovery: 161 tests ran, 157 passed, four skipped (symlink privilege, two Windows junction variants denied by access/privilege, and unavailable POSIX sh for hook execution). No failures or errors.
|
|
20
|
+
|
|
21
|
+
Tests use a writable disposable root outside the repository because the sandbox's default temporary directory denies fixture access. Synthetic upgrade coverage preserves owner context/project.json, model selection, and existing measurement bytes; adds source/native Filament skills; and verifies a stable rerun. It is not a real application trial or an authenticated older release reproduction.
|
|
22
|
+
|
|
23
|
+
## Runtime boundaries
|
|
24
|
+
|
|
25
|
+
Local environment is Windows with bundled Python 3.12.14. Native Linux/Python 3.13, the corrected hosted CI matrix, actual Filament/PHP application tests, live model/API controls, native client activation, and application cost/productivity trials remain unverified. Portable mocked POSIX errors exercise the reported failure, but do not establish a native Linux rerun.
|
|
26
|
+
|
|
27
|
+
No commit, push, tag, remote release, or package publication is part of this local preparation.
|
aikit/docs/V0_6_4.md
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# v0.6.4 verification
|
|
2
|
+
|
|
3
|
+
Prepared locally on 2026-10-10. [ADR 0007](adr/0007-generated-client-configuration-and-presets.md) records scope and tradeoffs.
|
|
4
|
+
|
|
5
|
+
## Implemented scope
|
|
6
|
+
|
|
7
|
+
- Native client settings: Claude Code allow rules for recorded checks, Read deny rules for secrets (shared list plus Laravel, Moodle, Composer, and Python secrets per module), and marked secret blocks in Cursor, Aider, and Gemini ignore files. Private mode writes .claude/settings.local.json, team mode .claude/settings.json; owned entries move with the mode.
|
|
8
|
+
- Path-scoped module rules for Claude Code, Cursor, Copilot, Windsurf, and Cline from ai-kit/project.json, with always-on forms for the root module and retirement through the existing adapter review.
|
|
9
|
+
- Data guards: ask rules for destructive file, Git, and Docker commands and detected Laravel/Moodle migrations.
|
|
10
|
+
- Presets minimal, solo, team, and strict, including the interactive prompt and a warning when a preset turns an enabled extra off.
|
|
11
|
+
- Workflow skills ai-kit-bootstrap, ai-kit-review, and ai-kit-sync-context with Claude-native copies; root README receives its own 16000-byte budget.
|
|
12
|
+
|
|
13
|
+
Client formats were read from primary documentation on 2026-10-10 (Claude Code memory, permissions, settings, skills, hooks; Cursor rules and ignore file; Copilot repository instructions and support matrix; Codex AGENTS.md, config, and skills; Gemini ignore, context, and skills; Aider options; Windsurf/Devin rules; Cline rules; Roo instructions). Sources are listed in the installed ADAPTERS.
|
|
14
|
+
|
|
15
|
+
## Verification status
|
|
16
|
+
|
|
17
|
+
- Full discovery on Windows/Python 3.14.6: 185 tests ran, 184 passed, one skipped (Windows symlink privilege). The POSIX hook test executed through Git Bash sh.
|
|
18
|
+
- Offline kit validation: zero errors and one expected warning for pending Gemini verification, including private/team Git visibility of generated rule paths. Python 3.10 grammar passed for every script and test.
|
|
19
|
+
- A real v0.5.0 installation (claude, codex, cursor, guards, session start, user-edited settings) upgraded with --preset solo: no conflicts, the preview named guards as turned off, --with-guards kept them, user settings stayed in settings.json, AI-KIT entries moved to settings.local.json, the rerun was stable, and the doctor reported nothing. Switching to --preset team made shared files visible and kept settings.local.json ignored.
|
|
20
|
+
|
|
21
|
+
## Runtime boundaries
|
|
22
|
+
|
|
23
|
+
Activation inside the actual clients was not exercised: Claude Code rule loading and permission enforcement, Cursor/Copilot/Windsurf/Cline rule attachment, and ignore-file behavior remain unverified. Read deny rules anchored with a leading slash assume the project root as the settings source for the local file. Native Linux, hosted CI, and real application trials remain unverified.
|
|
24
|
+
|
|
25
|
+
No commit, push, tag, remote release, or package publication is part of this local preparation.
|
aikit/docs/V1_4_0.md
ADDED
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
# AI-KIT v1.4.0
|
|
2
|
+
|
|
3
|
+
Prepared locally on 2026-10-15. [CHANGELOG](../CHANGELOG.md#v140-2026-10-15) owns release history. This record describes package/image preparation and the publication handoff; a local tag does not establish a published Docker Hub image or Git release.
|
|
4
|
+
|
|
5
|
+
## Docker Hub publication
|
|
6
|
+
|
|
7
|
+
Published on 2026-10-15 at the owner's explicit request: [tigusigalpa/ai-kit:1.4.0](https://hub.docker.com/r/tigusigalpa/ai-kit/tags?name=1.4.0).
|
|
8
|
+
|
|
9
|
+
- Registry index digest: `sha256:a4c5897f5e0f0d31496fb6b8005c9b9a040e50df870ec9b7f1a5546474e0441f`.
|
|
10
|
+
- Runtime platform: `linux/amd64`; platform manifest: `sha256:616ae21f12da4c61f3c818d83e70364b8627dbbf685bf0e972d6b1fb518619be`.
|
|
11
|
+
- Successful push and independent registry inspection matched the prepared local image. Remote configuration reports version 1.4.0, UID/GID 10001:10001 and entrypoint `aikit`. The index also contains build attestation metadata, not another runtime architecture.
|
|
12
|
+
- Only the requested version tag was published; `latest` was not assigned. No Git commit, push, tag or GitHub release was created by this publication.
|
|
13
|
+
|
|
14
|
+
~~~sh
|
|
15
|
+
docker pull tigusigalpa/ai-kit:1.4.0
|
|
16
|
+
# Immutable release reference:
|
|
17
|
+
docker pull tigusigalpa/ai-kit@sha256:a4c5897f5e0f0d31496fb6b8005c9b9a040e50df870ec9b7f1a5546474e0441f
|
|
18
|
+
~~~
|
|
19
|
+
|
|
20
|
+
The external artifact folder includes `publication.json` and the push log; `SHA256SUMS` covers the publication record. The original `artifacts.json`, wheel and bundled image documentation retain their pre-publication preparation snapshot. This publication status was added to source documentation afterward without rebuilding or replacing the verified image.
|
|
21
|
+
|
|
22
|
+
## Release contents
|
|
23
|
+
|
|
24
|
+
- Standalone Docker CLI: Python, Git, packaged templates and all optional integration resources. Multi-stage build, digest-pinned Python base, hash-checked build tools, matching version guard, UID/GID 10001, offline commands and a read-only root with explicit writable mounts. [Usage](../README.md#run-ai-kit-with-docker), [image contract](DOCKER.md).
|
|
25
|
+
- Local shared context from two dialogues: ChatGPT export JSON, OpenRouter-style messages JSON and text/Markdown imports; selected ChatGPT branches; provenance, pending claims and explicit keyed contradictions; source-bound human review; immutable ChatGPT Markdown and OpenRouter user-message exports. [Workflow](../README.md#shared-context-from-two-dialogues), [contract](DIALOGUE_MEMORY.md).
|
|
26
|
+
- Private memory remains excluded from Git in both sharing modes, Docker build context and Python distribution. Upgrades preserve project facts, settings, local edits, native client configuration and private memory.
|
|
27
|
+
|
|
28
|
+
Normal exports require review and resolved keyed conflicts; draft exports retain explicit pending items. A lack of keyed conflicts does not establish semantic agreement. The release does not connect accounts, synchronize conversations, upload context, invoke models or provide an OpenRouter API adapter. Optional security and design modules retain their existing opt-in contracts.
|
|
29
|
+
|
|
30
|
+
## Prepare and use the image
|
|
31
|
+
|
|
32
|
+
Build from the reviewed release checkout in PowerShell:
|
|
33
|
+
|
|
34
|
+
~~~powershell
|
|
35
|
+
$kitVersion = (Get-Content -LiteralPath .\VERSION -Raw).Trim()
|
|
36
|
+
docker build --build-arg "AIKIT_VERSION=$kitVersion" --tag "ai-kit:$kitVersion" --tag "tigusigalpa/ai-kit:$kitVersion" .
|
|
37
|
+
docker image inspect "tigusigalpa/ai-kit:$kitVersion" --format '{{.Id}} {{.Os}}/{{.Architecture}} {{index .Config.Labels "org.opencontainers.image.version"}}'
|
|
38
|
+
docker run --rm --init --network none --read-only --cap-drop ALL --security-opt no-new-privileges --tmpfs /tmp:rw,nosuid,nodev,size=256m "tigusigalpa/ai-kit:$kitVersion" memory --help
|
|
39
|
+
~~~
|
|
40
|
+
|
|
41
|
+
The prepared platform is `linux/amd64`; no multiarchitecture claim is made. The image includes the distribution, so host source mounting is unnecessary. Mount an application folder at `/workspace` for installation, or a chosen writable workspace for memory imports/merges/exports. The [Docker guide](../README.md#run-ai-kit-with-docker) explains preview/apply and host permissions. Raw private dialogue files belong in runtime storage and must not be added to the image.
|
|
42
|
+
|
|
43
|
+
## Docker Hub publication handoff
|
|
44
|
+
|
|
45
|
+
The intended repository is `tigusigalpa/ai-kit`, version tag `1.4.0`. Local preparation creates both `ai-kit:1.4.0` and `tigusigalpa/ai-kit:1.4.0`; it does not push either tag. Confirm the repository visibility and account permissions before an explicitly requested publication. [Docker's official instructions](https://docs.docker.com/docker-hub/repos/manage/hub-images/push/) describe tagging, pushing and checking the remote tag.
|
|
46
|
+
|
|
47
|
+
After publication is requested, use the reviewed local image:
|
|
48
|
+
|
|
49
|
+
~~~powershell
|
|
50
|
+
docker login
|
|
51
|
+
docker push tigusigalpa/ai-kit:1.4.0
|
|
52
|
+
docker buildx imagetools inspect tigusigalpa/ai-kit:1.4.0
|
|
53
|
+
~~~
|
|
54
|
+
|
|
55
|
+
Record the registry digest returned by the successful push and confirm the remote platform/version before distributing a digest-pinned pull command. A local image ID is not evidence of a Docker Hub upload. `latest` is not assigned automatically. Keep credentials out of scripts, reports and the build context; there is no push workflow or stored registry secret in this release.
|
|
56
|
+
|
|
57
|
+
## Verification
|
|
58
|
+
|
|
59
|
+
Before release labeling, Windows/Python 3.12.14 ran 336 tests: 329 passed and seven environment skips. The packaged Linux/Python 3.13.16 run passed 334 of 336 tests with two Windows-junction skips. Offline wheel installation, private-memory package exclusion, Docker smoke and the README contradiction-resolution flow passed. [Memory coverage and unavailable cases](DIALOGUE_MEMORY.md#verification) and [earlier Docker/schema checks](DOCKER.md#verification-results) retain the original run details.
|
|
60
|
+
|
|
61
|
+
After labeling, verified on 2026-10-15:
|
|
62
|
+
|
|
63
|
+
- VERSION and the CLI report 1.4.0; nine Windows CLI tests passed. Kit validation returned zero errors and zero warnings.
|
|
64
|
+
- The actual versioned linux/amd64 image, running non-root with no network and a read-only root, passed the full 336-test discovery in 24.721 seconds: 334 passed and two Windows-only junction tests skipped. Native Linux symlink, hardlink, permission and FIFO checks ran.
|
|
65
|
+
- Docker smoke passed restricted runtime checks, read-only preview/apply refusal, writable installation of all four optional modules, preserved project/client documents, doctor, Web Design context and stable rerun. SIGTERM reached the foreground preview and exited 143; the real Docker ignore engine excluded synthetic secrets/private memory and included the required sources.
|
|
66
|
+
- An isolated Windows wheel build reported package metadata and bundled VERSION 1.4.0. Offline installation into a fresh venv passed the console CLI, dialogue import/merge/export pipeline, kit checks and all optional integration resources. A synthetic private-memory marker and its files were absent from the wheel.
|
|
67
|
+
- Upgrade fixtures used a Git archive of tracked HEAD at 1.3.0, not a reconstructed published release. Private/team modes preserved application README/context/facts, settings including an unknown preference, design documents, a locally edited source skill, native MCP configuration and private memory. The edited skill remained a reviewable conflict because archive/Windows baseline newlines differed; explicit semantic acceptance followed a comparison of the unchanged canonical text. Both security manifests retained parsed pin identities across newline changes. VERSION/state advanced to 1.4.0; doctor, links, actual Git ignore checks and stable reruns passed.
|
|
68
|
+
- Full Linux discovery and Docker smoke preceded the final result-documentation update. The final image and retained wheel are rebuilt from that update; final identity checks compare their bundled release files and memory modules against the current checkout. No runtime implementation changed during release labeling.
|
|
69
|
+
- Test containers were removed and no test volumes were created. The `desktop-linux` builder is shared; project-owned cache size could not be isolated, so no cache/volume prune was performed.
|
|
70
|
+
|
|
71
|
+
Retain local artifacts in a chosen directory outside the source checkout: the wheel, `SHA256SUMS` and `artifacts.json` with the final local image ID, platform, size, source hashes and check scope. The task handoff identifies that directory. Keeping binary build output outside the checkout lets source validation inspect only distribution sources; generated artifacts are not packaged link targets. The runnable image is retained in the selected local Docker daemon under both versioned tags. No tar archive is required to push those local tags.
|
|
72
|
+
|
|
73
|
+
Local checks do not establish hosted CI, live client activation, model calls, real benchmarks, other architectures, macOS execution or a Kubernetes deployment. Docker Hub publication was separately verified above. The complete Windows 336-test discovery preceded release labeling; only the nine CLI tests were rerun on Windows for version labeling. The post-label full discovery ran in the packaged Linux image.
|