akernel-runtime 0.1.0__tar.gz → 0.1.2__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.
- akernel_runtime-0.1.2/.github/release-notes/v0.1.0.md +65 -0
- akernel_runtime-0.1.2/.github/release-notes/v0.1.1.md +24 -0
- akernel_runtime-0.1.2/.github/release-notes/v0.1.2.md +30 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/.github/workflows/release.yml +84 -5
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/CHANGELOG.md +15 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/PKG-INFO +25 -7
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/README.md +23 -5
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/07-release-and-ci.md +1 -1
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/11-publishing-setup.md +46 -10
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/packages/npm/akernel/README.md +5 -3
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/packages/npm/akernel/package.json +6 -2
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/pyproject.toml +2 -2
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/akernel_runtime.egg-info/PKG-INFO +25 -7
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/akernel_runtime.egg-info/SOURCES.txt +3 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/__init__.py +1 -2
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/.env.example +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/.github/pull_request_template.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/.github/workflows/ci.yml +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/CODE_OF_CONDUCT.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/CONTRIBUTING.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/LICENSE +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/MANIFEST.in +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/NOTICE +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/SECURITY.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/00-vision.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/01-architecture.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/02-execution-plan.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/03-cli-mvp.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/04-evaluation.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/05-local-wake.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/06-skill-compiler.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/08-open-source-plan.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/09-product-roadmap.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/docs/10-benchmark-evidence.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/benchmarks/phase2/01-routing.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/benchmarks/phase2/02-memory.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/benchmarks/phase2/03-budget-profiles.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/benchmarks/scale/01-context-pressure.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/benchmarks/scale/02-agent-editing.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/benchmarks/scale/03-global-memory-marketplace.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/evals/phase2.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/marketplace/skills/index.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/skills/context_budget.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/skills/edit_file.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/skills/markdown/context_budget.md +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/packages/npm/akernel/bin/akernel.js +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/scripts/install_remote.ps1 +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/scripts/release_check.ps1 +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/setup.cfg +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/setup.cmd +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/setup.ps1 +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/akernel_runtime.egg-info/dependency_links.txt +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/akernel_runtime.egg-info/entry_points.txt +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/akernel_runtime.egg-info/requires.txt +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/akernel_runtime.egg-info/top_level.txt +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/__main__.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/agent_reports.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/benchmarks.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/budget.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/cli.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/context.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/evals.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/global_memory.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/loop.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/marketplace.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/marketplace_data/skills/context_budget.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/marketplace_data/skills/context_compaction.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/marketplace_data/skills/edit_file.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/marketplace_data/skills/index.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/marketplace_data/skills/long_task_planning.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/marketplace_data/skills/multi_file_bugfix.json +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/memory.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/models.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/planner.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/policy.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/project.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/providers.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/report_costs.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/runner.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/skills.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/state_writer.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/storage.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/tasks.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/text.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/tokenizer.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/tools.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/context_kernel/verifier.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/tests/test_runtime.py +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/wake.cmd +0 -0
- {akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/wake.ps1 +0 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Context Kernel v0.1.0
|
|
2
|
+
|
|
3
|
+
Context Kernel is an alpha CLI release of `akernel`, an **Agent Kernel** for building context-efficient coding-agent workflows.
|
|
4
|
+
|
|
5
|
+
Most agent systems treat the prompt as the runtime. Context Kernel moves more of that work into an inspectable local runtime: structured memory, scoped skill contracts, policy-gated tools, budget profiles, traces, and benchmark evidence.
|
|
6
|
+
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
Python users can install the published runtime from PyPI:
|
|
10
|
+
|
|
11
|
+
```powershell
|
|
12
|
+
python -m pip install --user akernel-runtime
|
|
13
|
+
akernel setup
|
|
14
|
+
akernel
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Windows users can also install directly from GitHub:
|
|
18
|
+
|
|
19
|
+
```powershell
|
|
20
|
+
irm https://raw.githubusercontent.com/huanxin0825-ctrl/context-kernel/main/scripts/install_remote.ps1 | iex
|
|
21
|
+
akernel setup
|
|
22
|
+
akernel
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
The npm launcher package is prepared but not yet published in this release:
|
|
26
|
+
|
|
27
|
+
```powershell
|
|
28
|
+
npm install -g @context-akernel/akernel
|
|
29
|
+
akernel setup
|
|
30
|
+
akernel
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Highlights
|
|
34
|
+
|
|
35
|
+
- `akernel` starts an interactive Claude Code-style agent session by default.
|
|
36
|
+
- `akernel setup` writes project-local OpenAI-compatible provider configuration.
|
|
37
|
+
- Primary and auxiliary model roles are tracked separately, including automatic routing and optional auxiliary review.
|
|
38
|
+
- Project scanning writes compact `.akernel/project.json` metadata with detected languages, package managers, key files, and likely test/build commands.
|
|
39
|
+
- The bounded agent loop supports policy-gated file reads, writes, patches, batch patches, command execution, and compact responses.
|
|
40
|
+
- Failing-test recovery can inspect simple Python failure output, patch one or more files, and rerun verification.
|
|
41
|
+
- Long task sessions can carry structured milestone plans, active checkpoints, acceptance criteria, and compact resume prompts.
|
|
42
|
+
- Memory pruning and global memory sync support explicit retention, dry-run previews, namespaces, source filters, tags, and provenance.
|
|
43
|
+
- Built-in skill marketplace support includes multi-file bugfix, long-task planning, and context-compaction contracts.
|
|
44
|
+
- A zero-dependency terminal UI provides a cockpit-style dashboard with transcript, model stack, workspace summary, diagnostics, and run timelines.
|
|
45
|
+
|
|
46
|
+
## Benchmark Evidence
|
|
47
|
+
|
|
48
|
+
The deterministic scale benchmark snapshot for this release:
|
|
49
|
+
|
|
50
|
+
- Fixtures: `3`
|
|
51
|
+
- Tasks: `6`
|
|
52
|
+
- Checks: `12/12`
|
|
53
|
+
- Pass rate: `100.0%`
|
|
54
|
+
- Kernel tokens: `1235`
|
|
55
|
+
- Full-load baseline tokens: `2447`
|
|
56
|
+
- Token savings: `1212`
|
|
57
|
+
- Total savings: `49.53%`
|
|
58
|
+
|
|
59
|
+
These benchmarks are mock-provider deterministic checks. They prove the runtime can produce repeatable token-savings evidence while preserving expected task evidence; they do not yet claim production-wide savings across all real providers.
|
|
60
|
+
|
|
61
|
+
## Alpha Notice
|
|
62
|
+
|
|
63
|
+
This is alpha software. The CLI is functional, tested, packaged, and benchmarked locally, but APIs, file formats, marketplace contracts, and memory-retention heuristics may change before a stable release.
|
|
64
|
+
|
|
65
|
+
Use it for experimentation, early integrations, benchmark-driven iteration, and contributor feedback.
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Context Kernel v0.1.1
|
|
2
|
+
|
|
3
|
+
This is a release polish update for the first public alpha. It keeps the runtime behavior stable while improving public packaging, release automation, and installation clarity.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```powershell
|
|
8
|
+
python -m pip install --user --upgrade akernel-runtime
|
|
9
|
+
akernel setup
|
|
10
|
+
akernel
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Changes
|
|
14
|
+
|
|
15
|
+
- Documented that `akernel` means **Agent Kernel**, and clarified the relationship between the project name, Python distribution, import package, CLI command, and npm launcher.
|
|
16
|
+
- Updated PyPI package metadata to use the Agent Kernel wording.
|
|
17
|
+
- Updated README installation language to reflect that `akernel-runtime` is live on PyPI.
|
|
18
|
+
- Added npm Trusted Publishing guidance, provenance support, and npm-only manual publish support to the release workflow.
|
|
19
|
+
- Added GitHub Release notes and workflow support for automated or manual release page creation.
|
|
20
|
+
|
|
21
|
+
## Notes
|
|
22
|
+
|
|
23
|
+
- The npm launcher remains prepared but unpublished until the `@context-akernel` npm scope and trusted publisher are configured.
|
|
24
|
+
- This is still alpha software; APIs, local state formats, marketplace contracts, and memory-retention heuristics may change before a stable release.
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Context Kernel v0.1.2
|
|
2
|
+
|
|
3
|
+
This release validates the public npm launcher path after the first PyPI releases.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
Python:
|
|
8
|
+
|
|
9
|
+
```powershell
|
|
10
|
+
python -m pip install --user --upgrade akernel-runtime
|
|
11
|
+
akernel setup
|
|
12
|
+
akernel
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
npm launcher:
|
|
16
|
+
|
|
17
|
+
```powershell
|
|
18
|
+
npm install -g @context-akernel/akernel
|
|
19
|
+
akernel setup
|
|
20
|
+
akernel
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Changes
|
|
24
|
+
|
|
25
|
+
- Renamed the prepared npm launcher scope from `@context-kernel/akernel` to `@context-akernel/akernel`.
|
|
26
|
+
- Keeps `akernel-runtime` as the Python source-of-truth package and `akernel` as the shared CLI command.
|
|
27
|
+
|
|
28
|
+
## Notes
|
|
29
|
+
|
|
30
|
+
This is still alpha software. The npm launcher bootstraps the Python package when needed; the Python runtime remains the authoritative implementation.
|
|
@@ -11,6 +11,20 @@ on:
|
|
|
11
11
|
options:
|
|
12
12
|
- "false"
|
|
13
13
|
- "true"
|
|
14
|
+
target:
|
|
15
|
+
description: "Publish target when publish=true."
|
|
16
|
+
required: true
|
|
17
|
+
default: "all"
|
|
18
|
+
type: choice
|
|
19
|
+
options:
|
|
20
|
+
- "all"
|
|
21
|
+
- "github-release"
|
|
22
|
+
- "python"
|
|
23
|
+
- "npm"
|
|
24
|
+
release_tag:
|
|
25
|
+
description: "Release tag for manual github-release runs, for example v0.1.0."
|
|
26
|
+
required: false
|
|
27
|
+
default: ""
|
|
14
28
|
push:
|
|
15
29
|
tags:
|
|
16
30
|
- "v*"
|
|
@@ -67,7 +81,7 @@ jobs:
|
|
|
67
81
|
- name: Set up Node
|
|
68
82
|
uses: actions/setup-node@v4
|
|
69
83
|
with:
|
|
70
|
-
node-version: "
|
|
84
|
+
node-version: "24"
|
|
71
85
|
|
|
72
86
|
- name: Validate npm package
|
|
73
87
|
working-directory: packages/npm/akernel
|
|
@@ -112,11 +126,65 @@ jobs:
|
|
|
112
126
|
.release-bench/benchmark-evidence.md
|
|
113
127
|
.release-bench/benchmarks/*.json
|
|
114
128
|
|
|
129
|
+
github-release:
|
|
130
|
+
name: Create GitHub Release
|
|
131
|
+
runs-on: ubuntu-latest
|
|
132
|
+
needs: [python-package, npm-package, benchmark-evidence]
|
|
133
|
+
if: |
|
|
134
|
+
startsWith(github.ref, 'refs/tags/v') ||
|
|
135
|
+
(
|
|
136
|
+
github.event_name == 'workflow_dispatch' &&
|
|
137
|
+
github.event.inputs.publish == 'true' &&
|
|
138
|
+
(
|
|
139
|
+
github.event.inputs.target == 'all' ||
|
|
140
|
+
github.event.inputs.target == 'github-release'
|
|
141
|
+
)
|
|
142
|
+
)
|
|
143
|
+
permissions:
|
|
144
|
+
contents: write
|
|
145
|
+
|
|
146
|
+
steps:
|
|
147
|
+
- name: Checkout
|
|
148
|
+
uses: actions/checkout@v4
|
|
149
|
+
|
|
150
|
+
- name: Resolve release notes
|
|
151
|
+
id: release_notes
|
|
152
|
+
shell: bash
|
|
153
|
+
run: |
|
|
154
|
+
set -euo pipefail
|
|
155
|
+
tag="${{ github.event.inputs.release_tag || github.ref_name }}"
|
|
156
|
+
if [ -z "$tag" ] || [ "$tag" = "main" ]; then
|
|
157
|
+
echo "release_tag must be set for manual GitHub release runs." >&2
|
|
158
|
+
exit 1
|
|
159
|
+
fi
|
|
160
|
+
notes=".github/release-notes/${tag}.md"
|
|
161
|
+
if [ ! -f "$notes" ]; then
|
|
162
|
+
echo "Missing release notes: $notes" >&2
|
|
163
|
+
exit 1
|
|
164
|
+
fi
|
|
165
|
+
echo "tag=$tag" >> "$GITHUB_OUTPUT"
|
|
166
|
+
echo "notes=$notes" >> "$GITHUB_OUTPUT"
|
|
167
|
+
|
|
168
|
+
- name: Publish GitHub release
|
|
169
|
+
uses: softprops/action-gh-release@v2
|
|
170
|
+
with:
|
|
171
|
+
tag_name: ${{ steps.release_notes.outputs.tag }}
|
|
172
|
+
name: Context Kernel ${{ steps.release_notes.outputs.tag }}
|
|
173
|
+
body_path: ${{ steps.release_notes.outputs.notes }}
|
|
174
|
+
prerelease: true
|
|
175
|
+
|
|
115
176
|
publish-pypi:
|
|
116
177
|
name: Publish To PyPI
|
|
117
178
|
runs-on: ubuntu-latest
|
|
118
179
|
needs: [python-package, npm-package, benchmark-evidence]
|
|
119
|
-
if:
|
|
180
|
+
if: |
|
|
181
|
+
(
|
|
182
|
+
startsWith(github.ref, 'refs/tags/v') ||
|
|
183
|
+
(github.event_name == 'workflow_dispatch' && github.event.inputs.publish == 'true')
|
|
184
|
+
) && (
|
|
185
|
+
github.event_name != 'workflow_dispatch' ||
|
|
186
|
+
github.event.inputs.target != 'npm'
|
|
187
|
+
)
|
|
120
188
|
permissions:
|
|
121
189
|
id-token: write
|
|
122
190
|
contents: read
|
|
@@ -136,9 +204,17 @@ jobs:
|
|
|
136
204
|
name: Publish npm Launcher
|
|
137
205
|
runs-on: ubuntu-latest
|
|
138
206
|
needs: [python-package, npm-package, benchmark-evidence]
|
|
139
|
-
if:
|
|
207
|
+
if: |
|
|
208
|
+
(
|
|
209
|
+
startsWith(github.ref, 'refs/tags/v') ||
|
|
210
|
+
(github.event_name == 'workflow_dispatch' && github.event.inputs.publish == 'true')
|
|
211
|
+
) && (
|
|
212
|
+
github.event_name != 'workflow_dispatch' ||
|
|
213
|
+
github.event.inputs.target != 'python'
|
|
214
|
+
) && vars.PUBLISH_NPM == 'true'
|
|
140
215
|
permissions:
|
|
141
216
|
contents: read
|
|
217
|
+
id-token: write
|
|
142
218
|
environment: npm
|
|
143
219
|
|
|
144
220
|
steps:
|
|
@@ -148,11 +224,14 @@ jobs:
|
|
|
148
224
|
- name: Set up Node
|
|
149
225
|
uses: actions/setup-node@v4
|
|
150
226
|
with:
|
|
151
|
-
node-version: "
|
|
227
|
+
node-version: "24"
|
|
152
228
|
registry-url: "https://registry.npmjs.org"
|
|
153
229
|
|
|
230
|
+
- name: Upgrade npm
|
|
231
|
+
run: npm install -g npm@latest
|
|
232
|
+
|
|
154
233
|
- name: Publish npm package
|
|
155
234
|
working-directory: packages/npm/akernel
|
|
156
235
|
env:
|
|
157
236
|
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
|
158
|
-
run: npm publish --access public
|
|
237
|
+
run: npm publish --access public --provenance
|
|
@@ -8,6 +8,21 @@ The project follows a pragmatic pre-1.0 changelog: breaking changes may occur, b
|
|
|
8
8
|
|
|
9
9
|
No changes yet.
|
|
10
10
|
|
|
11
|
+
## 0.1.2 - 2026-05-12
|
|
12
|
+
|
|
13
|
+
### Changed
|
|
14
|
+
|
|
15
|
+
- Renamed the prepared npm launcher scope from `@context-kernel/akernel` to `@context-akernel/akernel`.
|
|
16
|
+
|
|
17
|
+
## 0.1.1 - 2026-05-12
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
|
|
21
|
+
- Documented the `akernel` naming convention as Agent Kernel across README, PyPI metadata, and npm launcher docs.
|
|
22
|
+
- Upgraded npm release guidance and workflow support for trusted publishing, provenance, and npm-only manual publishes.
|
|
23
|
+
- Added GitHub Release notes and release workflow support for automated or manual release page creation.
|
|
24
|
+
- Updated README installation wording to reflect the live PyPI package and the pending npm launcher publication.
|
|
25
|
+
|
|
11
26
|
## 0.1.0 - 2026-05-12
|
|
12
27
|
|
|
13
28
|
### Added
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: akernel-runtime
|
|
3
|
-
Version: 0.1.
|
|
4
|
-
Summary:
|
|
3
|
+
Version: 0.1.2
|
|
4
|
+
Summary: Agent Kernel: a CLI-first context-native agent runtime prototype.
|
|
5
5
|
Author: Context Kernel contributors
|
|
6
6
|
License-Expression: Apache-2.0
|
|
7
7
|
Project-URL: Homepage, https://github.com/huanxin0825-ctrl/context-kernel
|
|
@@ -33,6 +33,20 @@ Most agent systems treat the prompt as the runtime. Context Kernel treats the pr
|
|
|
33
33
|
|
|
34
34
|
The project is currently an alpha CLI release. It is ready for local experimentation, benchmark-driven iteration, and early contributor feedback.
|
|
35
35
|
|
|
36
|
+
## Naming
|
|
37
|
+
|
|
38
|
+
`akernel` means **Agent Kernel**. The project name is Context Kernel because the runtime focuses on context assembly, memory, policy, skills, and token budgets; the executable is `akernel` because users invoke the agent-facing kernel directly from the terminal.
|
|
39
|
+
|
|
40
|
+
The shorter `kernel` command is intentionally avoided because it is too broad and already carries strong meanings in operating systems, Jupyter, and other AI projects. `akernel` keeps the kernel idea while giving the CLI a distinct, searchable identity.
|
|
41
|
+
|
|
42
|
+
Package and command names map to the same idea:
|
|
43
|
+
|
|
44
|
+
- GitHub repository: `context-kernel`
|
|
45
|
+
- Python distribution: `akernel-runtime`
|
|
46
|
+
- Python import package: `context_kernel`
|
|
47
|
+
- CLI command: `akernel`
|
|
48
|
+
- npm launcher: `@context-akernel/akernel`
|
|
49
|
+
|
|
36
50
|
## Why This Exists
|
|
37
51
|
|
|
38
52
|
Modern agent workflows often become expensive for reasons that are hard to see:
|
|
@@ -98,9 +112,9 @@ akernel --help
|
|
|
98
112
|
|
|
99
113
|
Python 3.10 or newer is required.
|
|
100
114
|
|
|
101
|
-
###
|
|
115
|
+
### PyPI Install
|
|
102
116
|
|
|
103
|
-
|
|
117
|
+
The Python runtime is published on PyPI as `akernel-runtime`:
|
|
104
118
|
|
|
105
119
|
```powershell
|
|
106
120
|
python -m pip install --user akernel-runtime
|
|
@@ -108,6 +122,8 @@ akernel setup
|
|
|
108
122
|
akernel
|
|
109
123
|
```
|
|
110
124
|
|
|
125
|
+
### GitHub Remote Install
|
|
126
|
+
|
|
111
127
|
Windows users can also install directly from GitHub:
|
|
112
128
|
|
|
113
129
|
```powershell
|
|
@@ -116,15 +132,17 @@ akernel setup
|
|
|
116
132
|
akernel
|
|
117
133
|
```
|
|
118
134
|
|
|
119
|
-
|
|
135
|
+
### npm Launcher
|
|
136
|
+
|
|
137
|
+
The npm launcher is prepared for publication. After `@context-akernel/akernel` is published, it will provide a Node-style entrypoint and bootstrap the Python package if it is missing:
|
|
120
138
|
|
|
121
139
|
```powershell
|
|
122
|
-
npm install -g @context-
|
|
140
|
+
npm install -g @context-akernel/akernel
|
|
123
141
|
akernel setup
|
|
124
142
|
akernel
|
|
125
143
|
```
|
|
126
144
|
|
|
127
|
-
Set `AKERNEL_PIP_SOURCE=git+https://github.com/huanxin0825-ctrl/context-kernel.git` to make the npm launcher bootstrap from GitHub
|
|
145
|
+
Set `AKERNEL_PIP_SOURCE=git+https://github.com/huanxin0825-ctrl/context-kernel.git` to make the npm launcher bootstrap from GitHub instead of PyPI.
|
|
128
146
|
|
|
129
147
|
## Quick Start
|
|
130
148
|
|
|
@@ -6,6 +6,20 @@ Most agent systems treat the prompt as the runtime. Context Kernel treats the pr
|
|
|
6
6
|
|
|
7
7
|
The project is currently an alpha CLI release. It is ready for local experimentation, benchmark-driven iteration, and early contributor feedback.
|
|
8
8
|
|
|
9
|
+
## Naming
|
|
10
|
+
|
|
11
|
+
`akernel` means **Agent Kernel**. The project name is Context Kernel because the runtime focuses on context assembly, memory, policy, skills, and token budgets; the executable is `akernel` because users invoke the agent-facing kernel directly from the terminal.
|
|
12
|
+
|
|
13
|
+
The shorter `kernel` command is intentionally avoided because it is too broad and already carries strong meanings in operating systems, Jupyter, and other AI projects. `akernel` keeps the kernel idea while giving the CLI a distinct, searchable identity.
|
|
14
|
+
|
|
15
|
+
Package and command names map to the same idea:
|
|
16
|
+
|
|
17
|
+
- GitHub repository: `context-kernel`
|
|
18
|
+
- Python distribution: `akernel-runtime`
|
|
19
|
+
- Python import package: `context_kernel`
|
|
20
|
+
- CLI command: `akernel`
|
|
21
|
+
- npm launcher: `@context-akernel/akernel`
|
|
22
|
+
|
|
9
23
|
## Why This Exists
|
|
10
24
|
|
|
11
25
|
Modern agent workflows often become expensive for reasons that are hard to see:
|
|
@@ -71,9 +85,9 @@ akernel --help
|
|
|
71
85
|
|
|
72
86
|
Python 3.10 or newer is required.
|
|
73
87
|
|
|
74
|
-
###
|
|
88
|
+
### PyPI Install
|
|
75
89
|
|
|
76
|
-
|
|
90
|
+
The Python runtime is published on PyPI as `akernel-runtime`:
|
|
77
91
|
|
|
78
92
|
```powershell
|
|
79
93
|
python -m pip install --user akernel-runtime
|
|
@@ -81,6 +95,8 @@ akernel setup
|
|
|
81
95
|
akernel
|
|
82
96
|
```
|
|
83
97
|
|
|
98
|
+
### GitHub Remote Install
|
|
99
|
+
|
|
84
100
|
Windows users can also install directly from GitHub:
|
|
85
101
|
|
|
86
102
|
```powershell
|
|
@@ -89,15 +105,17 @@ akernel setup
|
|
|
89
105
|
akernel
|
|
90
106
|
```
|
|
91
107
|
|
|
92
|
-
|
|
108
|
+
### npm Launcher
|
|
109
|
+
|
|
110
|
+
The npm launcher is prepared for publication. After `@context-akernel/akernel` is published, it will provide a Node-style entrypoint and bootstrap the Python package if it is missing:
|
|
93
111
|
|
|
94
112
|
```powershell
|
|
95
|
-
npm install -g @context-
|
|
113
|
+
npm install -g @context-akernel/akernel
|
|
96
114
|
akernel setup
|
|
97
115
|
akernel
|
|
98
116
|
```
|
|
99
117
|
|
|
100
|
-
Set `AKERNEL_PIP_SOURCE=git+https://github.com/huanxin0825-ctrl/context-kernel.git` to make the npm launcher bootstrap from GitHub
|
|
118
|
+
Set `AKERNEL_PIP_SOURCE=git+https://github.com/huanxin0825-ctrl/context-kernel.git` to make the npm launcher bootstrap from GitHub instead of PyPI.
|
|
101
119
|
|
|
102
120
|
## Quick Start
|
|
103
121
|
|
|
@@ -48,20 +48,36 @@ No GitHub secret is needed for PyPI when Trusted Publishing is configured.
|
|
|
48
48
|
The current npm package name is:
|
|
49
49
|
|
|
50
50
|
```text
|
|
51
|
-
@context-
|
|
51
|
+
@context-akernel/akernel
|
|
52
52
|
```
|
|
53
53
|
|
|
54
|
-
Before publishing, confirm that the `context-
|
|
54
|
+
Before publishing, confirm that the `context-akernel` npm scope is available to you. Usually that means creating an npm organization named `context-akernel`, or changing `packages/npm/akernel/package.json` to use a scope you control.
|
|
55
55
|
|
|
56
|
-
Recommended
|
|
56
|
+
Recommended path: use npm Trusted Publishing. It avoids a long-lived npm token and publishes with GitHub OIDC plus provenance.
|
|
57
57
|
|
|
58
58
|
1. Create or confirm the npm scope.
|
|
59
|
-
2. Create
|
|
60
|
-
3.
|
|
61
|
-
4. In GitHub repository settings, add an Actions variable named `PUBLISH_NPM` with value `true`.
|
|
62
|
-
5. Keep the package public with `npm publish --access public`, which is already what the release workflow uses.
|
|
59
|
+
2. Create the package or configure a pending trusted publisher for `@context-akernel/akernel`.
|
|
60
|
+
3. Use these trusted publisher values:
|
|
63
61
|
|
|
64
|
-
|
|
62
|
+
| Field | Value |
|
|
63
|
+
| --- | --- |
|
|
64
|
+
| Package | `@context-akernel/akernel` |
|
|
65
|
+
| Owner | `huanxin0825-ctrl` |
|
|
66
|
+
| Repository name | `context-kernel` |
|
|
67
|
+
| Workflow filename | `release.yml` |
|
|
68
|
+
| Environment name | `npm` |
|
|
69
|
+
|
|
70
|
+
Then create the matching GitHub environment:
|
|
71
|
+
|
|
72
|
+
1. Open GitHub repository settings.
|
|
73
|
+
2. Go to `Environments`.
|
|
74
|
+
3. Create an environment named `npm`.
|
|
75
|
+
4. Optional but recommended: add required reviewers so publication requires manual approval.
|
|
76
|
+
5. In GitHub repository settings, add an Actions variable named `PUBLISH_NPM` with value `true`.
|
|
77
|
+
|
|
78
|
+
No GitHub secret is needed for npm when Trusted Publishing is configured.
|
|
79
|
+
|
|
80
|
+
Fallback path: if npm Trusted Publishing is unavailable for the account or package, create an npm automation or granular access token with publish permission, add it as an Actions secret named `NPM_TOKEN`, keep `PUBLISH_NPM=true`, and the same workflow can publish with the token. Do not paste the token into chat, issues, pull requests, or docs.
|
|
65
81
|
|
|
66
82
|
## Local Release Check
|
|
67
83
|
|
|
@@ -85,13 +101,33 @@ git push origin v0.1.0
|
|
|
85
101
|
|
|
86
102
|
The GitHub release workflow will build artifacts, generate benchmark evidence, publish to PyPI through Trusted Publishing, and publish the npm launcher if `NPM_TOKEN` and `PUBLISH_NPM=true` are configured.
|
|
87
103
|
|
|
104
|
+
To publish only npm for an already-published Python version, open the `Release` workflow manually and run it with:
|
|
105
|
+
|
|
106
|
+
```text
|
|
107
|
+
publish=true
|
|
108
|
+
target=npm
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
This avoids trying to republish the same PyPI version.
|
|
112
|
+
|
|
113
|
+
To create or refresh only the GitHub Release page for an existing tag, open the `Release` workflow manually and run it with:
|
|
114
|
+
|
|
115
|
+
```text
|
|
116
|
+
publish=true
|
|
117
|
+
target=github-release
|
|
118
|
+
release_tag=v0.1.0
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Release notes are read from `.github/release-notes/<tag>.md`.
|
|
122
|
+
|
|
88
123
|
## What To Send Back
|
|
89
124
|
|
|
90
125
|
Send only these confirmations:
|
|
91
126
|
|
|
92
127
|
- PyPI account is ready and Trusted Publisher is configured.
|
|
93
128
|
- GitHub environment `pypi` exists.
|
|
94
|
-
- npm scope decision: keep `@context-
|
|
95
|
-
- If publishing npm now: `
|
|
129
|
+
- npm scope decision: keep `@context-akernel/akernel` or change to another scope.
|
|
130
|
+
- If publishing npm now: npm Trusted Publishing exists, GitHub environment `npm` exists, and `PUBLISH_NPM=true` variable exists.
|
|
131
|
+
- If using the fallback token path: `NPM_TOKEN` secret exists.
|
|
96
132
|
|
|
97
133
|
Do not send API tokens or passwords.
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
# @context-
|
|
1
|
+
# @context-akernel/akernel
|
|
2
2
|
|
|
3
|
-
This package is a small npm launcher wrapper for the Python
|
|
3
|
+
This package is a small npm launcher wrapper for the Python Context Kernel runtime.
|
|
4
|
+
|
|
5
|
+
`akernel` means **Agent Kernel**: the command starts the agent-facing runtime that assembles context, memory, skills, policy, and token budgets before model calls.
|
|
4
6
|
|
|
5
7
|
```bash
|
|
6
|
-
npm install -g @context-
|
|
8
|
+
npm install -g @context-akernel/akernel
|
|
7
9
|
akernel setup
|
|
8
10
|
akernel
|
|
9
11
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "@context-
|
|
3
|
-
"version": "0.1.
|
|
2
|
+
"name": "@context-akernel/akernel",
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "npm launcher wrapper for the Context Kernel akernel CLI.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"homepage": "https://github.com/huanxin0825-ctrl/context-kernel#readme",
|
|
@@ -22,6 +22,10 @@
|
|
|
22
22
|
"bin": {
|
|
23
23
|
"akernel": "bin/akernel.js"
|
|
24
24
|
},
|
|
25
|
+
"publishConfig": {
|
|
26
|
+
"access": "public",
|
|
27
|
+
"provenance": true
|
|
28
|
+
},
|
|
25
29
|
"files": [
|
|
26
30
|
"bin",
|
|
27
31
|
"README.md"
|
|
@@ -4,8 +4,8 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "akernel-runtime"
|
|
7
|
-
version = "0.1.
|
|
8
|
-
description = "
|
|
7
|
+
version = "0.1.2"
|
|
8
|
+
description = "Agent Kernel: a CLI-first context-native agent runtime prototype."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "Apache-2.0"
|
|
11
11
|
license-files = ["LICENSE", "NOTICE"]
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: akernel-runtime
|
|
3
|
-
Version: 0.1.
|
|
4
|
-
Summary:
|
|
3
|
+
Version: 0.1.2
|
|
4
|
+
Summary: Agent Kernel: a CLI-first context-native agent runtime prototype.
|
|
5
5
|
Author: Context Kernel contributors
|
|
6
6
|
License-Expression: Apache-2.0
|
|
7
7
|
Project-URL: Homepage, https://github.com/huanxin0825-ctrl/context-kernel
|
|
@@ -33,6 +33,20 @@ Most agent systems treat the prompt as the runtime. Context Kernel treats the pr
|
|
|
33
33
|
|
|
34
34
|
The project is currently an alpha CLI release. It is ready for local experimentation, benchmark-driven iteration, and early contributor feedback.
|
|
35
35
|
|
|
36
|
+
## Naming
|
|
37
|
+
|
|
38
|
+
`akernel` means **Agent Kernel**. The project name is Context Kernel because the runtime focuses on context assembly, memory, policy, skills, and token budgets; the executable is `akernel` because users invoke the agent-facing kernel directly from the terminal.
|
|
39
|
+
|
|
40
|
+
The shorter `kernel` command is intentionally avoided because it is too broad and already carries strong meanings in operating systems, Jupyter, and other AI projects. `akernel` keeps the kernel idea while giving the CLI a distinct, searchable identity.
|
|
41
|
+
|
|
42
|
+
Package and command names map to the same idea:
|
|
43
|
+
|
|
44
|
+
- GitHub repository: `context-kernel`
|
|
45
|
+
- Python distribution: `akernel-runtime`
|
|
46
|
+
- Python import package: `context_kernel`
|
|
47
|
+
- CLI command: `akernel`
|
|
48
|
+
- npm launcher: `@context-akernel/akernel`
|
|
49
|
+
|
|
36
50
|
## Why This Exists
|
|
37
51
|
|
|
38
52
|
Modern agent workflows often become expensive for reasons that are hard to see:
|
|
@@ -98,9 +112,9 @@ akernel --help
|
|
|
98
112
|
|
|
99
113
|
Python 3.10 or newer is required.
|
|
100
114
|
|
|
101
|
-
###
|
|
115
|
+
### PyPI Install
|
|
102
116
|
|
|
103
|
-
|
|
117
|
+
The Python runtime is published on PyPI as `akernel-runtime`:
|
|
104
118
|
|
|
105
119
|
```powershell
|
|
106
120
|
python -m pip install --user akernel-runtime
|
|
@@ -108,6 +122,8 @@ akernel setup
|
|
|
108
122
|
akernel
|
|
109
123
|
```
|
|
110
124
|
|
|
125
|
+
### GitHub Remote Install
|
|
126
|
+
|
|
111
127
|
Windows users can also install directly from GitHub:
|
|
112
128
|
|
|
113
129
|
```powershell
|
|
@@ -116,15 +132,17 @@ akernel setup
|
|
|
116
132
|
akernel
|
|
117
133
|
```
|
|
118
134
|
|
|
119
|
-
|
|
135
|
+
### npm Launcher
|
|
136
|
+
|
|
137
|
+
The npm launcher is prepared for publication. After `@context-akernel/akernel` is published, it will provide a Node-style entrypoint and bootstrap the Python package if it is missing:
|
|
120
138
|
|
|
121
139
|
```powershell
|
|
122
|
-
npm install -g @context-
|
|
140
|
+
npm install -g @context-akernel/akernel
|
|
123
141
|
akernel setup
|
|
124
142
|
akernel
|
|
125
143
|
```
|
|
126
144
|
|
|
127
|
-
Set `AKERNEL_PIP_SOURCE=git+https://github.com/huanxin0825-ctrl/context-kernel.git` to make the npm launcher bootstrap from GitHub
|
|
145
|
+
Set `AKERNEL_PIP_SOURCE=git+https://github.com/huanxin0825-ctrl/context-kernel.git` to make the npm launcher bootstrap from GitHub instead of PyPI.
|
|
128
146
|
|
|
129
147
|
## Quick Start
|
|
130
148
|
|
|
@@ -15,6 +15,9 @@ wake.ps1
|
|
|
15
15
|
.github/pull_request_template.md
|
|
16
16
|
.github/ISSUE_TEMPLATE/bug_report.md
|
|
17
17
|
.github/ISSUE_TEMPLATE/feature_request.md
|
|
18
|
+
.github/release-notes/v0.1.0.md
|
|
19
|
+
.github/release-notes/v0.1.1.md
|
|
20
|
+
.github/release-notes/v0.1.2.md
|
|
18
21
|
.github/workflows/ci.yml
|
|
19
22
|
.github/workflows/release.yml
|
|
20
23
|
docs/00-vision.md
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/benchmarks/phase2/03-budget-profiles.json
RENAMED
|
File without changes
|
{akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/benchmarks/scale/01-context-pressure.json
RENAMED
|
File without changes
|
{akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/examples/benchmarks/scale/02-agent-editing.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/akernel_runtime.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
{akernel_runtime-0.1.0 → akernel_runtime-0.1.2}/src/akernel_runtime.egg-info/entry_points.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|