Skip to content

chore: prepare the repository for its public release - #2

Merged
backtrack5r3 (tomflenner) merged 1 commit into
refactor/intent-toolsfrom
chore/open-source-pack
Oct 21, 2026
Merged

backtrack5r3 (tomflenner) merged 1 commit into
refactor/intent-toolsfrom
chore/open-source-pack

Conversation

@Alexkuva

Copy link
Copy Markdown
Contributor

Stacked on #1: merge this into refactor/intent-tools, then #1 into main with Rebase and merge. The headers, the CI and the docs it changes are #1's, so it cannot target main on its own.

What

The licensing and contribution pack that the other public repositories ship (sdk-python, sdk-go, cli), adapted to the MCP server:

  • LICENSE is now the Apache-2.0 text apache.org publishes, byte for byte. The previous one reworded section 9 and replaced the appendix.
  • New files: NOTICE (Kaiten MCP server / Copyright 2026 KAITEN INC), DCO.md, CONTRIBUTING.md, SECURITY.md, and in .github/: CODEOWNERS (* @kaitencloud/engineering), the PR template, and workflows/dco.yml.
  • SPDX headers open every Python file. tests/test_headers.py fails on any file without one.
  • Packaging: the wheel declares license = "Apache-2.0" and ships LICENSE and NOTICE (license-files, hatchling ≥ 1.27). The image installs that wheel, so it carries them too: the Dockerfile copies them into the build stage.
  • CI job names are now lint, test and build, the three checks the public repositories' default-branch ruleset requires. build is the former Image and still waits for lint and test before it publishes.
  • Docs: they pointed at the SaaS stack's local gateway (port 6100, kaiten-saas_default), which is not public. The client examples now use this repository's compose.yml (localhost:8000/mcp) and Kaiten's own gateway (localhost:6060/api). The e2e suite runs against Kaiten's task quickstart dataset (Kaiten Sushi Shop). The README no longer says the repository is private.

Why

The repository is going public with the same settings as the other public repositories. kaitencloud/infra-scm#12 adopts it into Terraform and adds the ruleset that requires lint, test, build and DCO. #12 is applied only once this PR and #1 are on main: before that, those checks never report and every PR would be blocked.

Testing

  • uv run ruff check ., uv run ruff format --check .: clean
  • uv run pytest: 45 passed, the header tests included (e2e deselected)
  • uv build --wheel: dist-info/licenses/ holds LICENSE and NOTICE
  • docker build .: OK, and the image's venv carries both files
  • Not run: uv run pytest -m e2e against Kaiten's task quickstart. Please run it once, since its instructions changed.

dco.yml runs from main (pull_request_target), so it reports nothing here or on #1 until #1 has merged.

🤖 Generated with Claude Code · ✅ Tested and approved by Alex (@Alexkuva), maintainer

The licensing and contribution pack the other public repositories ship
(sdk-python, sdk-go, cli), adapted to the MCP server:

- LICENSE is now the Apache-2.0 text apache.org publishes, byte for byte:
  the previous one reworded section 9 and replaced the appendix.
- NOTICE, DCO.md, CONTRIBUTING.md, SECURITY.md, CODEOWNERS
  (@kaitencloud/engineering), the pull request template and the DCO
  workflow, which runs from main.
- Every Python file opens with the SPDX notice; tests/test_headers.py
  fails on one that does not.
- The wheel declares Apache-2.0 and carries LICENSE and NOTICE
  (license-files, hatchling 1.27 or later), and so does the image, which
  installs that wheel.

The CI jobs are now named lint, test and build: the checks the
default-branch ruleset of the public repositories requires.

The documentation pointed at the SaaS stack's local gateway (port 6100),
which is not public. The client examples now target this repository's
compose.yml (localhost:8000/mcp) and Kaiten's own gateway
(localhost:6060/api), and the e2e suite runs against Kaiten's
`task quickstart` dataset.

Signed-off-by: Alexandre Bergere <alexandre.bergere@kaiten.sh>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants