<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Installer and releases on processkit</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/</link><description>Recent content in Installer and releases on processkit</description><generator>Hugo</generator><language>en</language><atom:link href="https://projectious-work.github.io/processkit/v1.x/docs/installer/index.xml" rel="self" type="application/rss+xml"/><item><title>CLI and automation interfaces</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/cli/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/cli/</guid><description>&lt;p&gt;processkit has two deliberately separate command interfaces. Human lifecycle
commands optimize for reviewable output and safe project operation. The
machine interface uses a versioned JSON request and result contract for aibox
and other automation.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Release and development status:&lt;/strong&gt; &lt;code&gt;v1.0.0-alpha.5&lt;/code&gt; supports the local
lifecycle commands below except &lt;code&gt;doctor&lt;/code&gt; and &lt;code&gt;mcp&lt;/code&gt;. The &lt;code&gt;v1.x-dev&lt;/code&gt; line adds
read-only native diagnosis and MCP supervision for the next prerelease.
Commands in “Target human lifecycle” remain planned unless listed as current.&lt;/p&gt;</description></item><item><title>Generated CLI Reference</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/cli-generated/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/cli-generated/</guid><description>&lt;p&gt;Do not edit this page by hand. Regenerate it with
&lt;code&gt;uv run scripts/generate-v1-docs.py&lt;/code&gt;.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Native lifecycle CLI for processkit projects
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Usage: processkit &amp;lt;COMMAND&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Commands:
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; plan Produce a deterministic, non-mutating installation plan
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; install Install a verified release into a new or empty target project
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; recover Roll back or finalize incomplete installer transactions
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; uninstall Remove unchanged files owned by a prior installation
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; update Update unchanged managed files from a verified release
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; verify-release Verify a signed local release against an explicit local trust store
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; verify Verify installed provenance and report managed-path drift
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; inspect-compatibility Inspect a legacy processkit tree without mutating it
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; migrate-v0 Transition an exact v0 release into a fresh v1 target
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; doctor Diagnose the installed project and Python MCP runtime without mutation
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; mcp Verify or supervise the shipped Python MCP gateway
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; execute Execute one versioned installer request and emit one result envelope
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; help Print this message or the help of the given subcommand(s)
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;Options:
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; -h, --help Print help
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; -V, --version Print version
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>Rust Library API</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/rust-api/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/rust-api/</guid><description>&lt;p&gt;The &lt;code&gt;processkit&lt;/code&gt; crate exposes the versioned request envelope used by
&lt;code&gt;processkit execute --request&lt;/code&gt;. The supported alpha surface is intentionally
small:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;API_VERSION&lt;/code&gt; identifies the machine protocol;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Operation&lt;/code&gt; enumerates supported lifecycle operations; and&lt;/li&gt;
&lt;li&gt;&lt;code&gt;InstallerRequest&lt;/code&gt; constructs and serializes typed request envelopes.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Build and test the API documentation with:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;cargo &lt;span class="nb"&gt;test&lt;/span&gt; --doc --locked --manifest-path installer/Cargo.toml
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;cargo doc --locked --no-deps --manifest-path installer/Cargo.toml
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Public items follow semantic versioning within the v1 release line. Modules
and functions not reachable from the crate root are internal implementation
details and may change between prereleases. Filesystem transactions, release
verification, and lifecycle execution remain behind the executable boundary;
the library does not offer an alternate mutation path.&lt;/p&gt;</description></item><item><title>Installer Contract</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/contract/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/contract/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Alpha.4 status:&lt;/strong&gt; Implemented for explicit local distributions and signed
local releases. Canonical online release acquisition is not implemented.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The standalone installer consumes only a release directory or verified archive
explicitly supplied by its caller. It has no built-in release URL, package
layout, MCP inventory, or harness policy.&lt;/p&gt;
&lt;p&gt;The release-owned contract is under &lt;code&gt;.processkit/installer/&lt;/code&gt;. Protocol
&lt;code&gt;processkit.projectious.work/installer/v1alpha1&lt;/code&gt; supports deterministic
planning plus transactional install, update, uninstall, and recovery.
&lt;code&gt;copy/v1&lt;/code&gt; and &lt;code&gt;preserve-user/v1&lt;/code&gt; are the closed payload operations.&lt;/p&gt;</description></item><item><title>Python MCP runtime contract</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/runtime/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/runtime/</guid><description>&lt;p&gt;Python is an intentional processkit runtime dependency. It implements the MCP
servers; it is not required by the Model Context Protocol itself. The native
Rust CLI owns installation and lifecycle safety. Native diagnostics and
process supervision wrap that Python implementation; they do not reimplement
MCP behavior.&lt;/p&gt;
&lt;h2 id="current-alpha-requirements"&gt;Current alpha requirements&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Python 3.10 or newer must be discoverable by &lt;code&gt;uv&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;uv&lt;/code&gt; must support PEP 723 script metadata.&lt;/li&gt;
&lt;li&gt;The installed gateway script and processkit shared Python library must be
readable from the selected project root.&lt;/li&gt;
&lt;li&gt;The first preparation may require network access to populate the &lt;code&gt;uv&lt;/code&gt; cache.&lt;/li&gt;
&lt;li&gt;Direct &lt;code&gt;uv run&lt;/code&gt; startup remains a supported compatibility and development
interface.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Every shipped MCP entry point declares its Python constraint and dependencies
in a PEP 723 block. The gateway currently declares:&lt;/p&gt;</description></item><item><title>Release Production</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/local-release/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/local-release/</guid><description>&lt;p&gt;The v1 release path is agent-first, human-operable, and entirely local.
Maintainer-controlled machines invoke the same repository scripts and bind
their native results to one tagged commit. No GitHub Actions or hosted build
service participates.&lt;/p&gt;
&lt;h2 id="one-time-key-setup"&gt;One-time key setup&lt;/h2&gt;
&lt;p&gt;Keep the private key outside the repository. The public key may be copied to
the local trust store of every machine that installs official releases.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;scripts/processkit-keygen-local.sh &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="nv"&gt;$HOME&lt;/span&gt;&lt;span class="s2"&gt;/.config/processkit/keys/release.pem&amp;#34;&lt;/span&gt; &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="s2"&gt;&amp;#34;&lt;/span&gt;&lt;span class="nv"&gt;$HOME&lt;/span&gt;&lt;span class="s2"&gt;/.config/processkit/trust.d/release.pub.pem&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Back up the private key securely. Losing it prevents producing a release under
that identity. Disclosing it requires creating a new key identity and removing
the compromised public key from local trust stores.&lt;/p&gt;</description></item><item><title>Evidence-bound Release Process</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/release-process/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/release-process/</guid><description>&lt;p&gt;Issue
&lt;a href="https://github.com/projectious-work/processkit/issues/151" rel="noopener"&gt;#151&lt;/a&gt;

defines the aibox-style release ritual adopted by processkit.&lt;/p&gt;
&lt;h2 id="version-line-authority"&gt;Version-line authority&lt;/h2&gt;
&lt;p&gt;The requested semantic version determines the only branch permitted to tag:&lt;/p&gt;
&lt;table&gt;
 &lt;thead&gt;
 &lt;tr&gt;
 &lt;th&gt;Version&lt;/th&gt;
 &lt;th&gt;Required branch&lt;/th&gt;
 &lt;/tr&gt;
 &lt;/thead&gt;
 &lt;tbody&gt;
 &lt;tr&gt;
 &lt;td&gt;stable v0&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;v0.x-release&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;v1 alpha, beta, or RC&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;v1.x-pre-release&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;tr&gt;
 &lt;td&gt;stable v1&lt;/td&gt;
 &lt;td&gt;&lt;code&gt;v1.x-release&lt;/code&gt;&lt;/td&gt;
 &lt;/tr&gt;
 &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Resolve the mapping without mutation:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;scripts/maintain.sh release-branch v1.0.0-alpha.5
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Promotion into protected branches happens through pull requests. Never
force-push a release branch.&lt;/p&gt;
&lt;h2 id="candidate-evidence"&gt;Candidate evidence&lt;/h2&gt;
&lt;p&gt;Evidence belongs to an exact candidate:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;dist/release-evidence/&amp;lt;version&amp;gt;/&amp;lt;commit&amp;gt;/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── binding.json
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── RELEASE-STATE.md
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── RELEASE-DOCTORS.md
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;├── logs/
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;└── &amp;lt;step&amp;gt;.passed
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;The binding records version, commit, clean tree, branch, Rust, Python, &lt;code&gt;uv&lt;/code&gt;,
and host target. A step marker is reused only within that binding.&lt;/p&gt;</description></item><item><title>Installer Threat Model</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/threat-model/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/threat-model/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Alpha.4 status:&lt;/strong&gt; Traversal, symlink, forged-journal, signature, digest,
downgrade, same-version equivocation, and interruption paths have automated
coverage. The “before beta” items below remain open hardening targets.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The installer treats an archive, descriptor, manifest, catalog, adapter, and
target filesystem as untrusted until validated. It must reject absolute or
parent-traversal paths, archive links and path escapes, duplicate normalized
destinations, unsupported operations, unverified assets, and target symlink
escapes. It must not execute release-supplied code.&lt;/p&gt;</description></item><item><title>v0 Compatibility</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/v0-compatibility/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/v0-compatibility/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;v1.x development status:&lt;/strong&gt; Exact-release inspection and a guarded
fresh-target transition are implemented. Native in-place migration and
automatic legacy-entity transformation are not supported.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The v1 installer identifies legacy processkit evidence without consulting
aibox, harness, devcontainer, or MCP configuration files.&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;processkit inspect-compatibility &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; --root /path/to/legacy-tree &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; --distribution /path/to/processkit-v1-release &lt;span class="se"&gt;\
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; --json
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;An &lt;code&gt;exact-release&lt;/code&gt; result requires every immutable anchor in a shipped
compatibility manifest to match. The beta manifests cover v0.27.1 and
v0.28.4 release trees. A partial installed project may be classified only as
&lt;code&gt;legacy-project-candidate&lt;/code&gt;; its exact version is never guessed.&lt;/p&gt;</description></item><item><title>aibox Integration</title><link>https://projectious-work.github.io/processkit/v1.x/docs/installer/aibox-integration/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://projectious-work.github.io/processkit/v1.x/docs/installer/aibox-integration/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Alpha.5 status:&lt;/strong&gt; The opaque request/result protocol and direct-CLI/aibox
installed-state parity contract are implemented. The v0 compatibility bridge
remains available for gradual downstream adoption.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;aibox should treat processkit as an opaque local executable. It creates a
versioned JSON request, invokes &lt;code&gt;processkit execute --request &amp;lt;path&amp;gt;&lt;/code&gt;, parses
the single JSON result, and does not duplicate processkit ownership policy.&lt;/p&gt;
&lt;p&gt;The producer integration checkpoint is the schema bundle under
&lt;code&gt;src/.processkit/installer/schemas/&lt;/code&gt;, the executable built from &lt;code&gt;installer/&lt;/code&gt;,
and these local gates:&lt;/p&gt;</description></item></channel></rss>