ai-kit-python 1.4.5__tar.gz → 1.4.6__tar.gz
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.5 → ai_kit_python-1.4.6}/.agents/skills/project-continuity/SKILL.md +3 -2
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/.gitattributes +2 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/.github/workflows/publish-pypi.yml +53 -10
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/.gitignore +1 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/CHANGELOG.md +23 -4
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/CONTRIBUTING.md +3 -3
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/Dockerfile +6 -3
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/MANIFEST.in +1 -1
- {ai_kit_python-1.4.5/ai_kit_python.egg-info → ai_kit_python-1.4.6}/PKG-INFO +23 -11
- ai_kit_python-1.4.6/README.md +336 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/SKILL.md +12 -9
- ai_kit_python-1.4.6/VERSION +1 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6/ai_kit_python.egg-info}/PKG-INFO +23 -11
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai_kit_python.egg-info/SOURCES.txt +38 -6
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/aikit_cli.py +10 -0
- ai_kit_python-1.4.6/docker/build-requirements.txt +9 -0
- ai_kit_python-1.4.6/docker/pypi-requirements.txt +2 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/DECISIONS.md +2 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/DIALOGUE_MEMORY.md +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/DOCKER.md +7 -7
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/DOCKER_HUB_OVERVIEW.md +30 -21
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/ORCHESTRATION.md +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/PYPI.md +12 -5
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/PYPI_DESCRIPTION.md +21 -9
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/V1_4_0.md +3 -3
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/V1_4_1.md +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/V1_4_4.md +2 -2
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/V1_4_5.md +20 -5
- ai_kit_python-1.4.6/docs/V1_4_6.md +24 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/WEB_DESIGN.md +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0013-docker-cli-image.md +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0014-local-dialogue-memory.md +1 -1
- ai_kit_python-1.4.6/docs/adr/0016-consistent-distributions-and-safer-defaults.md +22 -0
- ai_kit_python-1.4.6/docs/guide/CONTEXT7.md +15 -0
- ai_kit_python-1.4.6/docs/guide/DIALOGUE_MEMORY.md +113 -0
- ai_kit_python-1.4.6/docs/guide/DOCKER.md +212 -0
- ai_kit_python-1.4.6/docs/guide/INSTALL.md +173 -0
- ai_kit_python-1.4.6/docs/guide/INSTALLER_FLAGS.md +113 -0
- ai_kit_python-1.4.6/docs/guide/MAINTAINERS.md +44 -0
- ai_kit_python-1.4.6/docs/guide/MEASUREMENT.md +42 -0
- ai_kit_python-1.4.6/docs/guide/OPENROUTER.md +98 -0
- ai_kit_python-1.4.6/docs/guide/ORCHESTRATION.md +128 -0
- ai_kit_python-1.4.6/docs/guide/README.md +66 -0
- ai_kit_python-1.4.6/docs/guide/SECURITY_WORKFLOWS.md +35 -0
- ai_kit_python-1.4.6/docs/guide/WEB_DESIGN.md +147 -0
- ai_kit_python-1.4.6/docs/guide/WEB_DESIGN_STACKS.md +158 -0
- ai_kit_python-1.4.6/docs/guide/WEB_DESIGN_TOOLS.md +145 -0
- ai_kit_python-1.4.6/docs/guide/WINDOWS.md +214 -0
- ai_kit_python-1.4.6/integrations/ai-kit-check.yml +90 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/pyproject.toml +2 -2
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/benchmark.py +2 -2
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/check_distribution.py +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/check_kit.py +55 -19
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/context.py +7 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/doctor.py +29 -10
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/install.py +86 -24
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/learning.py +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/memory.py +8 -2
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/metrics.py +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/security-audit/SKILL.md +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/strix/SKILL.md +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/AGENTS.md +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/CONTAINERS.md +15 -8
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/settings.json +1 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/build_distribution.py +1 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/docker_smoke.py +20 -6
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_check_kit.py +2 -2
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_doctor.py +14 -1
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_install.py +6 -2
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_memory.py +6 -5
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_metrics.py +1 -1
- ai_kit_python-1.4.6/tests/test_review_fixes.py +250 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_security_audit.py +4 -0
- ai_kit_python-1.4.6/tests/test_workflow_security.py +86 -0
- ai_kit_python-1.4.5/CLAUDE.md +0 -3
- ai_kit_python-1.4.5/KIMI.md +0 -3
- ai_kit_python-1.4.5/MANUS.md +0 -3
- ai_kit_python-1.4.5/README.md +0 -1604
- ai_kit_python-1.4.5/VERSION +0 -1
- ai_kit_python-1.4.5/docker/build-requirements.txt +0 -4
- ai_kit_python-1.4.5/docker/pypi-requirements.txt +0 -3
- ai_kit_python-1.4.5/integrations/ai-kit-check.yml +0 -66
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/.agents/skills/go-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/.agents/skills/laravel-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/.agents/skills/moodle-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/.agents/skills/python-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/.dockerignore +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/.github/workflows/check-kit.yml +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/BOOTSTRAP_PROMPT.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/LICENSE +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/Makefile +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/SECURITY.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/__init__.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/ADAPTERS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/CONTAINERS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/ENGINEERING.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/INTENT.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/MODELS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/SKILLS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/adr/0001-adaptive-model-routing.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/stacks/GO.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/stacks/LARAVEL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/stacks/MOODLE.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai-kit/stacks/PYTHON.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai_kit_python.egg-info/dependency_links.txt +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai_kit_python.egg-info/entry_points.txt +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/ai_kit_python.egg-info/top_level.txt +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/deploy/k8s/install-preview-job.yaml +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docker/check_version.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/ADAPTER_PATH_FIX.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/BENCHMARK.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/CONTEXT7.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/DEVELOPMENT_PLAN.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/EVALUATION.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/IMPLEMENTATION.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/MANUS_REVIEW.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/SECURITY_AUDIT.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/STRIX.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/V0_5_0.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/V0_6_4.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/V1_4_2.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/V1_4_3.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/WINDOWS_CI_FIX.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0000-template.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0001-adaptive-model-routing.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0002-template-separation.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0003-agent-registry-and-router.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0004-onboarding-and-project-facts.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0005-client-settings-ownership.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0006-routing-evidence-and-local-measurements.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0007-generated-client-configuration-and-presets.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0008-unified-cli-and-fact-drift.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0009-provider-review-doctor-fix-and-ci-self-install.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0010-metrics-analysis-and-gemini-verification.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0011-evidence-lifecycle-and-evaluation.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0012-measurement-led-routing.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/adr/0015-optional-bounded-orchestration.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/changelog/v0.12.0.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/original-bundle-checks.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v0.1-changelog.txt +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v0.10-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v0.13.0-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v0.2-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v0.3-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v0.4-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v0.5-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v0.6.4-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v0.6.5-v0.9-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v1.1.0-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/v1.2.0-changelog.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/docs/history/verification-before-measurements.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/CONVENTIONS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/README.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/agents.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/ai-kit-cline.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/ai-kit-roo.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/ai-kit-windsurf.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/ai-kit.mdc +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/claude-settings.data-ask.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/claude-settings.git-ask.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/codex-agents/aikit_explorer.toml +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/codex-agents/aikit_reviewer.toml +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/codex-agents/aikit_worker.toml +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/copilot-instructions.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/security-audit.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/integrations/strix.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/__init__.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/adapters.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/adaptive.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/adr.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/changelog.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/docker_test_usage.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/evaluate.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/memory_import.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/memory_store.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/orchestrate.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/scripts/router.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/setup.cfg +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/hooks/session-start.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/hooks/session-start.sh +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/ai-kit-bootstrap/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/ai-kit-review/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/ai-kit-sync-context/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/context7-docs/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/design-extract/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/dotnet-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/filament-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/frontend-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/go-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/infra-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/java-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/laravel-blade-ui/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/laravel-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/library-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/moodle-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/php-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/project-continuity/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/python-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/rust-work/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/security-audit/agents/openai.yaml +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/strix/agents/openai.yaml +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/ui-review/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/.agents/skills/web-design/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/CHANGELOG.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/CLAUDE.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/GEMINI.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/KIMI.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/MANUS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/PROJECT_CONTEXT.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/README.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/WIKI.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/ADAPTERS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/BOOTSTRAP.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/CONTEXT7.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/CORE.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/ENGINEERING.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/MCP.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/METRICS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/ORCHESTRATION.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/SECURITY-AUDIT.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/SECURITY.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/SKILLS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/STRIX.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/UPSTREAM.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/WEB-DESIGN.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/orchestration.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/profiles/OWNER.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/project.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/POLICY.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/anthropic.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/anthropic.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/gemini.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/gemini.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/kimi.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/kimi.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/local.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/local.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/openai.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/providers/openai.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/routing.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/router/selection.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/DOTNET.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/FILAMENT.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/FRONTEND.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/GO.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/INFRA.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/JAVA.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/LARAVEL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/LIBRARY.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/MOODLE.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/PHP.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/PYTHON.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/stacks/RUST.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/AI-AND-LLM.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/ATTACK-CLASSES.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/CLIENT-SIDE.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/CLOUD-AND-DEPLOYMENT.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/DATA-ISOLATION-AND-LIFECYCLE.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/DESKTOP-MOBILE-AND-LOCAL-IPC.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/HUNTING.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/LICENSE +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/MEMORY-SAFETY-AND-BINARY.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/PROTOCOLS-RPC-AND-MESSAGING.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/RECONNAISSANCE.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/RESOURCE-EXHAUSTION-AND-AVAILABILITY.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/SUPPLY-CHAIN-AND-RELEASE.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/VALIDATION-AND-REPORTING.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/WEB-PROTOCOL-AND-AUTH.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/report-schema.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/validate-coverage-ledger.cjs +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/validate-coverage-ledger.test.cjs +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/validate-findings.cjs +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/security-audit/validate-findings.test.cjs +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/LICENSE +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/api-security-testing/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/application-security-testing/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/ci-security-scanning-with-strix/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/find-security-vulnerabilities-in-code/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/fix-security-vulnerabilities-with-strix/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/managed-pentesting-with-strix/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/owasp-top-10-testing/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/penetration-testing-with-strix/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/vendor/strix/web-app-penetration-testing/SKILL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/web-design/LARAVEL.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/web-design/LIBRARIES.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/web-design/REVIEW.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/ai-kit/web-design/TOOLS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/docs/DECISIONS.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/docs/adr/0000-template.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/docs/design/ACCEPTANCE.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/docs/design/BRIEF.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/template/docs/design/SYSTEM.md +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/templates/agent-secrets.ignore +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/templates/gitignore.private +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/templates/gitignore.team +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/fixtures/create-junction.ps1 +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/fixtures/golden/claude-settings-local.json +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_adapters.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_aikit.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_benchmark.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_context.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_context7.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_context_selection.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_distribution.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_docker_cleanup_upgrade.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_docker_image.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_docker_test_usage.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_evaluate.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_learning.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_native.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_onboarding.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_orchestration.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_pypi_events.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_router.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_strix.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/test_web_design.py +0 -0
- {ai_kit_python-1.4.5 → ai_kit_python-1.4.6}/tests/wheel_smoke.py +0 -0
|
@@ -19,7 +19,7 @@ Record runtime gaps separately from static/source checks.
|
|
|
19
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.
|
|
20
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.
|
|
21
21
|
For reference upgrades verify the published tree and overlay leftovers; preserve canonical links and checker coverage.
|
|
22
|
-
Verify [
|
|
22
|
+
Verify [installer flags](../../../docs/guide/INSTALLER_FLAGS.md) against argparse and selection precedence; check [Windows](../../../docs/guide/WINDOWS.md) examples and actual client activation. For [OpenRouter documentation](../../../docs/guide/OPENROUTER.md), 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. README/Overview are unbounded; keep instruction budgets and link/language checks.
|
|
23
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.
|
|
24
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.
|
|
25
25
|
Assess [Docker impact](../../../docs/DOCKER.md#change-impact-and-image-refresh) on every task, including installed guidance. Rebuild/test affected final sources as ai-kit:dev or record a descriptive-only exception. Verify client/daemon, pins, VERSION/labels, closed context, wheel resources, non-root mounts, offline/read-only preview/apply, preservation, reruns, signals and Job schema. Follow [canonical cleanup](../../../template/ai-kit/CONTAINERS.md#post-test-docker-cleanup): no threshold, zero eligible disposable resources, dedicated-builder cache, protected persistent/unrelated data and separately measured RAM/disk reclamation. Check actual backend, VHDX identity and idle maintenance scope; never infer compaction from prune. Upgrade tests must preserve adapted container rules/AGENTS through candidates. Record actual runtime gaps; publication needs its authorization.
|
|
@@ -28,6 +28,7 @@ For optional upstream skills, follow [security-audit](../../../docs/SECURITY_AUD
|
|
|
28
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.
|
|
29
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.
|
|
30
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 release path](../../../docs/V1_4_5.md#pypi-publication-status): 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.
|
|
31
|
+
Keep every distribution byte-identical: `.gitattributes` pins LF (vendor bytes stay -text), Docker smoke rejects CR in packaged text, and images are built from a clean `git archive` export with AIKIT_VERSION and AIKIT_REVISION. Upgrades must treat line-ending-only differences as unchanged. Keep the PyPI build job on hash-pinned tools, twine in its own job and digest verification before upload; `tests/test_workflow_security.py` guards these properties and pinned action SHAs. Tracked root entries (CLAUDE/KIMI/MANUS) must work without local maintainer files. The project CI template validates committed files only. Keep `docker_cleanup` modes (maximum default, keep-cache) consistent across CONTAINERS, AGENTS, settings, installer and docs.
|
|
31
32
|
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.
|
|
32
|
-
For Docker releases, follow [image verification](../../../docs/
|
|
33
|
+
For Docker releases, follow [image verification](../../../docs/V1_4_6.md#verification); 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.
|
|
33
34
|
Do not bootstrap this kit as an application or infer runtime success from static checks.
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# Every checkout, wheel and image carries LF text, so installed-file hashes match across platforms.
|
|
2
|
+
* text=auto eol=lf
|
|
1
3
|
# Pinned third-party bytes must survive Windows checkout without newline conversion.
|
|
2
4
|
template/ai-kit/vendor/security-audit/** -text
|
|
3
5
|
template/ai-kit/vendor/strix/** -text
|
|
@@ -31,6 +31,8 @@ jobs:
|
|
|
31
31
|
(github.event_name == 'release' && github.event.action == 'published' &&
|
|
32
32
|
!github.event.release.draft && !github.event.release.prerelease)
|
|
33
33
|
runs-on: ubuntu-latest
|
|
34
|
+
outputs:
|
|
35
|
+
sha256: ${{ steps.digests.outputs.sha256 }}
|
|
34
36
|
steps:
|
|
35
37
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
|
|
36
38
|
with:
|
|
@@ -47,17 +49,24 @@ jobs:
|
|
|
47
49
|
run: |
|
|
48
50
|
python scripts/check_kit.py
|
|
49
51
|
python -m unittest discover -s tests -v
|
|
50
|
-
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
python -m pip install -r docker/pypi-requirements.txt
|
|
52
|
+
# Only hash-pinned tools run in the job that produces the published files.
|
|
53
|
+
- name: Install hash-pinned build tools
|
|
54
|
+
run: python -m pip install --require-hashes -r docker/build-requirements.txt
|
|
54
55
|
- name: Build source archive and wheel from that source archive
|
|
55
56
|
run: python tests/build_distribution.py "${{ runner.temp }}/pypi-dist"
|
|
56
|
-
- name: Validate archives
|
|
57
|
+
- name: Validate archives and installed CLI
|
|
57
58
|
run: |
|
|
58
59
|
python scripts/check_distribution.py archives "${{ runner.temp }}/pypi-dist"
|
|
59
|
-
python -m twine check --strict "${{ runner.temp }}/pypi-dist/*"
|
|
60
60
|
python tests/wheel_smoke.py "${{ runner.temp }}/pypi-dist"
|
|
61
|
+
- name: Record artifact digests for the upload jobs
|
|
62
|
+
id: digests
|
|
63
|
+
working-directory: ${{ runner.temp }}/pypi-dist
|
|
64
|
+
run: |
|
|
65
|
+
{
|
|
66
|
+
echo 'sha256<<AIKIT_SHA256_END'
|
|
67
|
+
sha256sum -- *
|
|
68
|
+
echo 'AIKIT_SHA256_END'
|
|
69
|
+
} >> "$GITHUB_OUTPUT"
|
|
61
70
|
- name: Retain the exact validated distributions
|
|
62
71
|
uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2, verified 2026-10-16
|
|
63
72
|
with:
|
|
@@ -66,10 +75,28 @@ jobs:
|
|
|
66
75
|
if-no-files-found: error
|
|
67
76
|
retention-days: 14
|
|
68
77
|
|
|
69
|
-
|
|
78
|
+
# twine and its unpinned dependencies run apart from the build; upload jobs re-verify digests.
|
|
79
|
+
twine-check:
|
|
70
80
|
needs: build
|
|
81
|
+
runs-on: ubuntu-latest
|
|
82
|
+
steps:
|
|
83
|
+
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7
|
|
84
|
+
with:
|
|
85
|
+
python-version: '3.13'
|
|
86
|
+
- uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2, verified 2026-10-16
|
|
87
|
+
with:
|
|
88
|
+
name: python-distributions
|
|
89
|
+
path: dist/
|
|
90
|
+
- name: Check package descriptions with twine
|
|
91
|
+
run: |
|
|
92
|
+
python -m pip install twine==7.0.0
|
|
93
|
+
python -m twine check --strict dist/*
|
|
94
|
+
|
|
95
|
+
testpypi:
|
|
96
|
+
needs: [build, twine-check]
|
|
71
97
|
if: >-
|
|
72
|
-
needs.build.result == 'success' &&
|
|
98
|
+
needs.build.result == 'success' && needs.twine-check.result == 'success' &&
|
|
99
|
+
github.event_name == 'workflow_dispatch' &&
|
|
73
100
|
inputs.destination == 'testpypi' && github.repository == 'tigusigalpa/ai-kit' &&
|
|
74
101
|
startsWith(github.ref, 'refs/tags/v')
|
|
75
102
|
runs-on: ubuntu-latest
|
|
@@ -83,6 +110,14 @@ jobs:
|
|
|
83
110
|
with:
|
|
84
111
|
name: python-distributions
|
|
85
112
|
path: dist/
|
|
113
|
+
- name: Verify artifacts match the build job digests
|
|
114
|
+
working-directory: dist
|
|
115
|
+
env:
|
|
116
|
+
EXPECTED_SHA256: ${{ needs.build.outputs.sha256 }}
|
|
117
|
+
run: |
|
|
118
|
+
printf '%s\n' "$EXPECTED_SHA256" > ../SHA256SUMS
|
|
119
|
+
test "$(ls -1 | wc -l)" -eq "$(grep -c . ../SHA256SUMS)"
|
|
120
|
+
sha256sum --check --strict ../SHA256SUMS
|
|
86
121
|
- name: Upload only the validated artifacts to TestPyPI
|
|
87
122
|
uses: pypa/gh-action-pypi-publish@dc37677b2e1c63e2034f94d8a5b11f265b73ba33 # v1.14.2, verified 2026-10-16
|
|
88
123
|
with:
|
|
@@ -92,9 +127,9 @@ jobs:
|
|
|
92
127
|
skip-existing: false
|
|
93
128
|
|
|
94
129
|
pypi:
|
|
95
|
-
needs: build
|
|
130
|
+
needs: [build, twine-check]
|
|
96
131
|
if: >-
|
|
97
|
-
needs.build.result == 'success' &&
|
|
132
|
+
needs.build.result == 'success' && needs.twine-check.result == 'success' &&
|
|
98
133
|
(github.event_name == 'release' || inputs.destination == 'pypi') &&
|
|
99
134
|
github.repository == 'tigusigalpa/ai-kit' && startsWith(github.ref, 'refs/tags/v')
|
|
100
135
|
runs-on: ubuntu-latest
|
|
@@ -108,6 +143,14 @@ jobs:
|
|
|
108
143
|
with:
|
|
109
144
|
name: python-distributions
|
|
110
145
|
path: dist/
|
|
146
|
+
- name: Verify artifacts match the build job digests
|
|
147
|
+
working-directory: dist
|
|
148
|
+
env:
|
|
149
|
+
EXPECTED_SHA256: ${{ needs.build.outputs.sha256 }}
|
|
150
|
+
run: |
|
|
151
|
+
printf '%s\n' "$EXPECTED_SHA256" > ../SHA256SUMS
|
|
152
|
+
test "$(ls -1 | wc -l)" -eq "$(grep -c . ../SHA256SUMS)"
|
|
153
|
+
sha256sum --check --strict ../SHA256SUMS
|
|
111
154
|
- name: Upload only the validated artifacts to PyPI
|
|
112
155
|
uses: pypa/gh-action-pypi-publish@dc37677b2e1c63e2034f94d8a5b11f265b73ba33 # v1.14.2, verified 2026-10-16
|
|
113
156
|
with:
|
|
@@ -1,12 +1,31 @@
|
|
|
1
1
|
# AI-KIT changelog
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## v1.4.6 (2026-10-30)
|
|
4
|
+
|
|
5
|
+
For installed projects:
|
|
6
|
+
|
|
7
|
+
- Kit text is LF in every distribution (`* text=auto eol=lf`), so Git checkouts, the PyPI wheel and the Docker image carry identical bytes. Upgrades treat line-ending-only differences as unchanged: earlier CRLF installations neither rewrite nor conflict.
|
|
8
|
+
- The `--with-ci` workflow validates committed AI-KIT files with pinned actions; it no longer clones an unpinned AI-KIT or reinstalls on every push. The private-mode warning now explains that team mode keeps the files to check.
|
|
9
|
+
- New `docker_cleanup` setting and `--docker-cleanup maximum|keep-cache` flag. `maximum` (default) keeps the v1.4.5 policy; `keep-cache` still removes task-owned resources but keeps the dedicated project builder cache and reclaims host RAM/disk only on request or pressure. CONTAINERS regains its full Kubernetes wording.
|
|
10
|
+
- Fresh installs no longer refuse projects with linked manifests or unusual module directory names; secondary stacks (Rust, .NET, Java, Infra) fill missing commands instead of replacing pytest/npm/Go commands; `./mvnw`/`./gradlew` wrappers are no longer auto-allowed.
|
|
11
|
+
- `--with-security-audit` stops installing upstream `*.test.cjs` files that host test runners collected (still verified in the manifest); remove old copies from `ai-kit/vendor/security-audit/` manually. Delegated audit prompts must mark target content as untrusted data.
|
|
12
|
+
- Doctor: `--fix` previews and `--fix --apply` writes; non-UTF-8 Markdown, environment/build folders and private dialogue/design/orchestration data no longer crash, flood or leak into reports; a malformed project.json is a warning. `install --apply --check` reports a doctor failure after successful writes accurately.
|
|
13
|
+
- Memory imports keep labels such as Turkish "İ" as notes instead of aborting; `context snapshot` backs up project.json and keeps non-ASCII text readable; writer locks explain recovery; atomic writes fsync.
|
|
14
|
+
|
|
15
|
+
CLI, packaging and image:
|
|
16
|
+
|
|
17
|
+
- The CLI handles SIGTERM as PID 1 (Kubernetes Jobs, `docker run` without `--init`); smoke tests cover both. The image label declares `MIT AND Apache-2.0` and records the source revision; images are built from a clean LF export.
|
|
18
|
+
- The PyPI build job installs only hash-pinned tools (now including `build` and its Python 3.10 `tomli` dependency), records artifact SHA-256 digests, and leaves twine to a separate job; upload jobs verify the digests before publishing. A workflow-security test guards pinned actions, token scope and these steps.
|
|
19
|
+
- README is a 23 KB landing page with install paths (PyPI `ai-kit-python`, the image, a checkout), visible defaults (Russian chat, owner conventions) and honest feature wording; the reference material moved to [user guides](docs/guide/README.md). README installer flag tables, defaults, persistence and command examples now live in the [flag reference](docs/guide/INSTALLER_FLAGS.md).
|
|
20
|
+
- Tracked CLAUDE.md, KIMI.md and MANUS.md point to CONTRIBUTING.md and work in a clean clone; a local ignored CLAUDE.local.md can import the private AGENTS.md. The conditional document budget rises to 24000 bytes; always-loaded budgets stay 2500/3000.
|
|
21
|
+
- README features the [documentation site](https://tigusigalpa.github.io/ai-kit-docs/) (command configurator, CLI installation, flag reference) in a highlighted block, badge and navigation link; the guides index, PyPI description, Docker Hub Overview, SKILL.md and the PyPI `Documentation` project URL point to it.
|
|
22
|
+
- [Decision](docs/adr/0016-consistent-distributions-and-safer-defaults.md), [release record](docs/V1_4_6.md).
|
|
4
23
|
|
|
5
24
|
## v1.4.5 (2026-10-30)
|
|
6
25
|
|
|
7
26
|
- Require maximum disposable Docker cleanup after every build/test/debug task, without a size/age threshold; include containers, volumes, networks, unnecessary test images and dedicated-builder cache.
|
|
8
27
|
- Require separate host RAM/disk reclamation, supported WSL2 settings and offline compaction; preserve persistent data, unrelated workloads and reviewed retention scope.
|
|
9
|
-
- Updated installed AGENTS/docs; tested private/team upgrades and conflicts; published Docker Hub 1.4.5
|
|
28
|
+
- Updated installed AGENTS/docs; tested private/team upgrades and conflicts; published/verified Docker Hub and owner-approved PyPI 1.4.5, including a fresh registry installation. [Release record](docs/V1_4_5.md).
|
|
10
29
|
- Added a detailed Windows README guide covering setup, inherited/stale PATH, persistent user PATH, isolated CLI, common errors and project updates.
|
|
11
30
|
|
|
12
31
|
## v1.4.4 (2026-10-18)
|
|
@@ -46,7 +65,7 @@
|
|
|
46
65
|
|
|
47
66
|
- Published `tigusigalpa/ai-kit:1.4.0` to Docker Hub at the owner's request. Remote digest, linux/amd64 platform, version label and non-root entrypoint were read back and matched the prepared image; [publication record](docs/V1_4_0.md#docker-hub-publication). No `latest` tag was assigned.
|
|
48
67
|
- Prepared v1.4.0 for the Docker CLI and local dialogue memory. VERSION, CLI/wheel metadata, image label and release pointers use the same version; [release checks and Docker Hub handoff](docs/V1_4_0.md). Registry publication and Git tagging remain separate.
|
|
49
|
-
- Added offline `aikit memory import|merge|export`: three dialogue formats, selected ChatGPT branches, source-bound human review, explicit contradictions and ChatGPT/OpenRouter reference exports. Preserves immutable artifacts, refuses unreviewed normal exports and protects private memory across upgrades/builds. Added tests and detailed [workflow](
|
|
68
|
+
- Added offline `aikit memory import|merge|export`: three dialogue formats, selected ChatGPT branches, source-bound human review, explicit contradictions and ChatGPT/OpenRouter reference exports. Preserves immutable artifacts, refuses unreviewed normal exports and protects private memory across upgrades/builds. Added tests and detailed [workflow](docs/guide/DIALOGUE_MEMORY.md)/[contract](docs/DIALOGUE_MEMORY.md). Automatic sync and API execution remain separate. Archived v1.1.0 history without dropping its text.
|
|
50
69
|
- Before release labeling, dialogue-memory verification passed: 336 Windows tests (329 passed/seven environment skips), 336 packaged Linux tests (334 passed/two skips), clean kit validation, offline wheel and private-package exclusion, README conflict-resolution flow and Docker smoke. [Coverage and limits](docs/DIALOGUE_MEMORY.md#verification).
|
|
51
70
|
- Added standalone non-root Docker CLI, pinned build inputs, offline wheel resources, application mounts, Kubernetes preview Job, smoke tests, CI and [usage/results](docs/DOCKER.md). Earlier Docker-only Windows and packaged Linux runs passed 309 tests (307 passed/two skips each); actual image, preservation, signals, context exclusions, wheel and schema checks passed.
|
|
52
71
|
- After labeling: nine CLI tests, 336 packaged Linux tests (334 passed/two Windows-only skips), clean kit validation, isolated Windows wheel/fresh-venv smoke and private-memory exclusion passed. The actual linux/amd64 image passed Docker smoke. Tracked 1.3.0 upgrades in private/team modes preserved data and pin identities, with explicit review of a local skill conflict; reruns stayed stable. [Release evidence](docs/V1_4_0.md#verification).
|
|
@@ -55,7 +74,7 @@
|
|
|
55
74
|
|
|
56
75
|
- Prepared v1.3.0 for optional Web Design and the expanded README guide. The 304-test behavioral discovery below preceded release labeling; publication/tagging remain separate. [Release checks](docs/WEB_DESIGN.md#release-labeling).
|
|
57
76
|
- After labeling: eight CLI tests, version/wheel metadata 1.3.0, clean kit checks and offline fresh-venv wheel smoke passed. The pre-label 1.2.0 upgrade preserved facts, settings, local design/skill edits, MCP configuration and both security pins; rerun stayed stable.
|
|
58
|
-
- Added optional Web Design: --with-web-design installs four short skills, conditional Blade/library/tool/review guides and created-once project design documents. Added scoped context workflows, source/Claude lifecycle and preservation tests; installation remains offline. [Guide](
|
|
77
|
+
- Added optional Web Design: --with-web-design installs four short skills, conditional Blade/library/tool/review guides and created-once project design documents. Added scoped context workflows, source/Claude lifecycle and preservation tests; installation remains offline. [Guide](docs/guide/WEB_DESIGN.md), [integration record](docs/WEB_DESIGN.md).
|
|
59
78
|
- Removed the root README size quota and added extensive reference-to-site instructions for Laravel, Tailwind, Bootstrap, Alpine/Livewire, daisyUI, Flowbite, Flux, TypeUI and SkillUI. Existing instruction budgets remain scoped; external setup and real application checks stay separate.
|
|
60
79
|
- Verified on Windows/Python 3.12.14: 304 tests (300 passed/four runtime skips), clean kit/skill checks, all-client private/team visibility, preserved tracked 1.2.0 upgrade and fresh-venv wheel smoke. Live tools/sites remain unverified. Archived v0.6.4 history without losing its text; [details](docs/WEB_DESIGN.md#verification).
|
|
61
80
|
|
|
@@ -22,13 +22,13 @@ Assess [Docker impact](docs/DOCKER.md#change-impact-and-image-refresh) on every
|
|
|
22
22
|
|
|
23
23
|
Update [DOCKER_HUB_OVERVIEW.md](docs/DOCKER_HUB_OVERVIEW.md) for every AI-KIT Docker image release, including patch releases and authorized replacements of an existing tag. Keep the complete publication copy in that file; README and the [Docker guide](docs/DOCKER.md) link to it.
|
|
24
24
|
|
|
25
|
-
Before building, synchronize its version/tag, feature summary, release changes, optional modules, CLI examples and runtime/platform contract with VERSION, README and actual sources. Record only checks that ran. After an authorized push, read back the remote digest and configuration, then update publication status and the immutable pull example from that evidence. Never invent a digest or claim local preparation is publication. Keep descriptive publication receipts separate from the prepared image snapshot; do not rebuild/replace an image just to include its own digest.
|
|
25
|
+
Before building, synchronize its version/tag, feature summary, release changes, optional modules, CLI examples and runtime/platform contract with VERSION, README, the [user guides](docs/guide/README.md) and actual sources. Record only checks that ran. After an authorized push, read back the remote digest and configuration, then update publication status and the immutable pull example from that evidence. Never invent a digest or claim local preparation is publication. Keep descriptive publication receipts separate from the prepared image snapshot; do not rebuild/replace an image just to include its own digest.
|
|
26
26
|
|
|
27
|
-
The root README and Docker Hub Overview are user documentation without a size quota. Other
|
|
27
|
+
The root README and Docker Hub Overview are user documentation without a size quota. Other documents, including the user guides, have a 24000-byte budget; the always-loaded template AGENTS (2500) and CORE (3000) budgets stay strict. Keep the README a landing page and put reference material into docs/guide. Preparing this file does not itself publish a Docker Hub description, image or Git release; the relevant authorization still applies.
|
|
28
28
|
|
|
29
29
|
## Python package releases
|
|
30
30
|
|
|
31
|
-
Follow [PyPI preparation and release](docs/PYPI.md) for every package release. Synchronize VERSION, pyproject metadata, [description](docs/PYPI_DESCRIPTION.md) and
|
|
31
|
+
Follow [PyPI preparation and release](docs/PYPI.md) for every package release. Synchronize VERSION, pyproject metadata, [description](docs/PYPI_DESCRIPTION.md), README and the user guides; verify license/resource inclusion and local-file exclusions in both sdist and wheel, build the wheel from sdist with the hash-pinned build tools, run strict Twine checks in a separate environment and offline fresh-venv smoke. Preserve existing CI matrix/job names. Refresh the image when packaging changes affect it.
|
|
32
32
|
|
|
33
33
|
A published stable GitHub Release starts PyPI preparation; manual dispatch defaults to build-only validation. Uploads require matching VERSION/tag, the canonical repository, a configured environment/publisher and the owner's human approval. Agents must not approve or bypass a pending deployment on the owner's behalf. Keep environment reviewer protections when allowing future `v*` tags; validate canonical stable versions separately. Build tests have no OIDC permission; upload jobs consume only validated same-run artifacts. Record local, hosted and registry results separately. Preparation alone authorizes no upload, account setup or Git operation.
|
|
34
34
|
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
# CLI runtime. Build with --build-arg AIKIT_VERSION=<VERSION file value
|
|
1
|
+
# CLI runtime. Build from a clean LF checkout with --build-arg AIKIT_VERSION=<VERSION file value>
|
|
2
|
+
# and --build-arg AIKIT_REVISION=<full source commit>.
|
|
2
3
|
FROM scratch AS context-audit
|
|
3
4
|
COPY . /
|
|
4
5
|
|
|
@@ -18,11 +19,13 @@ RUN python -m pip wheel . --no-index --no-deps --no-build-isolation --wheel-dir
|
|
|
18
19
|
|
|
19
20
|
FROM python:3.13.16-slim-bookworm@sha256:a1165e272e578941b84abc79e4ab38a0305cd12803a5c4247979ac7655f4d641 AS runtime
|
|
20
21
|
ARG AIKIT_VERSION
|
|
22
|
+
ARG AIKIT_REVISION=unknown
|
|
21
23
|
LABEL org.opencontainers.image.title="AI-KIT CLI" \
|
|
22
24
|
org.opencontainers.image.description="Offline AI-KIT instructions, installer and project helpers" \
|
|
23
25
|
org.opencontainers.image.source="https://github.com/tigusigalpa/ai-kit" \
|
|
24
|
-
org.opencontainers.image.licenses="MIT" \
|
|
25
|
-
org.opencontainers.image.version="${AIKIT_VERSION}"
|
|
26
|
+
org.opencontainers.image.licenses="MIT AND Apache-2.0" \
|
|
27
|
+
org.opencontainers.image.version="${AIKIT_VERSION}" \
|
|
28
|
+
org.opencontainers.image.revision="${AIKIT_REVISION}"
|
|
26
29
|
ENV PYTHONDONTWRITEBYTECODE=1 \
|
|
27
30
|
PYTHONUNBUFFERED=1 \
|
|
28
31
|
PYTHONNOUSERSITE=1 \
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
include VERSION LICENSE README.md CHANGELOG.md SECURITY.md SKILL.md BOOTSTRAP_PROMPT.md CONTRIBUTING.md
|
|
2
|
-
exclude AGENTS.md PROJECT_CONTEXT.md WIKI.md
|
|
2
|
+
exclude AGENTS.md PROJECT_CONTEXT.md WIKI.md CLAUDE.local.md
|
|
3
3
|
include .gitignore .gitattributes
|
|
4
4
|
include Dockerfile .dockerignore
|
|
5
5
|
include pyproject.toml Makefile MANIFEST.in
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ai-kit-python
|
|
3
|
-
Version: 1.4.
|
|
3
|
+
Version: 1.4.6
|
|
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
|
|
8
|
-
Project-URL: Documentation, https://github.
|
|
8
|
+
Project-URL: Documentation, https://tigusigalpa.github.io/ai-kit-docs/
|
|
9
9
|
Project-URL: Source, https://github.com/tigusigalpa/ai-kit
|
|
10
10
|
Project-URL: Issues, https://github.com/tigusigalpa/ai-kit/issues
|
|
11
11
|
Project-URL: Changelog, https://github.com/tigusigalpa/ai-kit/blob/main/CHANGELOG.md
|
|
@@ -53,10 +53,18 @@ python -m pip install ai-kit-python
|
|
|
53
53
|
aikit --help
|
|
54
54
|
```
|
|
55
55
|
|
|
56
|
-
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`.
|
|
56
|
+
The package name is `ai-kit-python`; the executable is `aikit`. Never run `pip install aikit`: that is not this project's package name. Installing the CLI does not modify an application project until you run the installer with `--apply`.
|
|
57
57
|
|
|
58
58
|
## Preview, install and initialize
|
|
59
59
|
|
|
60
|
+
**Defaults you should know:** chat replies default to Russian, and conventions default to the owner's opinionated Laravel conventions, including no database foreign key constraints. Authored project files are always English. For English replies and your project's own conventions, add both flags to the preview and the apply command:
|
|
61
|
+
|
|
62
|
+
```sh
|
|
63
|
+
aikit install /path/to/my-app --agent codex --mode private --chat-language English --conventions standard
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
Choices are saved in `ai-kit/settings.json` and reused on upgrades. See [defaults and presets](https://github.com/tigusigalpa/ai-kit/blob/main/docs/guide/INSTALL.md#choose-your-defaults).
|
|
67
|
+
|
|
60
68
|
Choose an existing application folder, then preview:
|
|
61
69
|
|
|
62
70
|
```sh
|
|
@@ -77,12 +85,12 @@ Open the application in your AI client and invoke `$ai-kit-bootstrap` in Codex o
|
|
|
77
85
|
## Capabilities
|
|
78
86
|
|
|
79
87
|
- **Project context:** verified facts, module maps, commands, decisions and continuity instructions.
|
|
80
|
-
- **Client adapters:** Codex, Claude Code, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, Roo, Aider, Kimi and Manus.
|
|
88
|
+
- **Client adapters:** native entry files and configuration for Codex, Claude Code, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, Roo, Aider, Kimi and Manus. Documentation for Kimi and Manus is unverified, and activation in actual clients is unverified.
|
|
81
89
|
- **Stack guidance:** Go, PHP, Laravel, Filament, Moodle, Python, frontend, libraries, Rust, .NET, Java and Terraform/Helm, selected from project evidence.
|
|
82
90
|
- **Conservative upgrades:** existing documents, settings and local adaptations are preserved; conflicts remain reviewable.
|
|
83
91
|
- **Engineering workflows:** plan, implement, test, review and document, with explicit Git authorization.
|
|
84
|
-
- **Routing and measurement:** offline recommendations, context selection, metrics and benchmark scaffolding. Live execution needs a separately configured worker.
|
|
85
|
-
- **Container guidance:** Kubernetes
|
|
92
|
+
- **Routing and measurement:** offline model role/effort recommendations (no savings are claimed), context selection, metrics and benchmark scaffolding. Live execution needs a separately configured worker.
|
|
93
|
+
- **Container guidance:** the kit instructs agents to make new Dockerfiles and services Kubernetes-ready, keep images fresh and clean up after every Docker task. The default `maximum` mode removes all eligible disposable resources, including the dedicated builder cache, without a size threshold, and reclaims host RAM/disk; `--docker-cleanup keep-cache` keeps the dedicated project builder cache and reclaims host resources only on request or observed pressure. Persistent data and unrelated workloads remain protected; installation starts no cleanup or compaction process.
|
|
86
94
|
|
|
87
95
|
## Optional integrations
|
|
88
96
|
|
|
@@ -125,14 +133,18 @@ Package releases follow GitHub Release, automated checks and owner approval befo
|
|
|
125
133
|
|
|
126
134
|
## Documentation and license
|
|
127
135
|
|
|
128
|
-
- [Repository and
|
|
129
|
-
- [
|
|
130
|
-
- [
|
|
131
|
-
- [
|
|
136
|
+
- [Repository and README](https://github.com/tigusigalpa/ai-kit)
|
|
137
|
+
- [Documentation site with a command configurator](https://tigusigalpa.github.io/ai-kit-docs/)
|
|
138
|
+
- [All guides](https://github.com/tigusigalpa/ai-kit/blob/main/docs/guide/README.md)
|
|
139
|
+
- [Installation and upgrades](https://github.com/tigusigalpa/ai-kit/blob/main/docs/guide/INSTALL.md)
|
|
140
|
+
- [Installer flags and options](https://github.com/tigusigalpa/ai-kit/blob/main/docs/guide/INSTALLER_FLAGS.md)
|
|
141
|
+
- [Windows guide](https://github.com/tigusigalpa/ai-kit/blob/main/docs/guide/WINDOWS.md)
|
|
142
|
+
- [Web Design](https://github.com/tigusigalpa/ai-kit/blob/main/docs/guide/WEB_DESIGN.md)
|
|
143
|
+
- [Dialogue context](https://github.com/tigusigalpa/ai-kit/blob/main/docs/guide/DIALOGUE_MEMORY.md)
|
|
132
144
|
- [Issues](https://github.com/tigusigalpa/ai-kit/issues)
|
|
133
145
|
|
|
134
146
|
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
147
|
|
|
136
148
|
## Optional orchestration (v1.4.4)
|
|
137
149
|
|
|
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
|
|
150
|
+
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/blob/main/docs/guide/ORCHESTRATION.md).
|