Skip to content

Hive language integrations, executable tools, and OpenHuman at upstream main - #132

Merged
senamakel merged 156 commits into
mainfrom
hive-language-integrations
Oct 24, 2026
Merged

senamakel merged 156 commits into
mainfrom
hive-language-integrations

Conversation

@senamakel

Copy link
Copy Markdown
Member

Summary

This makes tinyhivemind-lang the one place a hive mind is defined, and bumps OpenHuman to upstream main.

  • OpenHuman bump. OpenHuman is pinned at upstream main 74d2a796, along with the tinytools, tinymemory and tinyflows revs it vendors. Its root [patch] tables are mirrored here, and the adapter is ported to the moved APIs (HookOutput, security::turn_origin, agent_registry, tinymemory_tools::{Identity, validate_root}, tinyflows_schedule, cron::scheduler::run(&DispatchCtx, …)).
  • Integration sections. hive.json gains runtime, providers, models, mcp, skills, tools, toolpacks, permissions, profiles, hooks, session, jev, features and workflows. All of them are validated, resolved per seat by lowering, and covered by a new integration edit class the constitution can withhold.
  • Executable tools. Tools and hooks can be scripts in any language. The new tinyhivemind-exec crate runs them by a language-neutral convention; edit a script and the next call runs the new version.
  • Package deployment. OpenHuman deploys packages with HiveDeployment::from_packages, and the HiveConfig manifest format is retired.

Spec: docs/specs/hive-language-integrations.md and docs/specs/executable-tools.md. Decision: ADR 0034. Plan: docs/plans/2026-10-23-hive-language-integrations.md.

Known failing: 8 examples/openhuman DeepSWE tests (upstream blocker)

At this OpenHuman pin, MCP calls run through the TinyMCP module, and that module faults during startup in an embedded runtime. tinybus then caches it as Ready, so every MCP call answers "TinyMCP module is unavailable". As a result, 8 deepswe_hive test::retry::* tests fail. The proof::test MCP baseline probably fails too: that run stopped before reaching it. The adapter's own MCP test now asserts only what the adapter owns: the hive gate refuses the scheduled call and admits the interactive one. The investigation and evidence are in tinyhumansai/openhuman#8280 and tinyhumansai/tinybus#109. Once they are fixed, I'll re-pin and restore the end-to-end assertion. Do not merge until that is done (this PR must keep main green).

Related issue

Refs tinyhumansai/openhuman#8280, tinyhumansai/tinybus#109

API or behavior changes

Breaking:

  • tinyhivemind_openhuman::config is crate-private. HiveConfig::{from_json, load_dir} and Markdown/YAML profile loading are removed; use language::PackageSource + HiveDeployment::from_packages. ManifestFactory::create_seat, HiveDeployment::{build, build_with} are crate-private. SecretResolver takes tinyhivemind_lang::SecretRef.
  • tinyhivemind_lang::LoweredSeat replaces model/tools/mcp/skills with integration: LoweredSeatIntegration. LoweredHive gains integrations.
  • A seat's model, mcp and skills now reference declared sections by id. Every shipped package declares what it uses.
  • Error::Memory wraps tinymemory_api::Error. New ConfigError::{Package, ConflictingSeat, ConflictingDeclaration}, lang::Error::Integration, Rule::Integration, PatchClass::Integration.
  • The OpenHuman adapter enables openhuman-embed features secret-file, legacy-import (needed to compile the pinned core) and testkit (in-memory session stores).

New: the tinyhivemind-exec crate; PackageSource; HiveDeployment::from_packages; the run_package example.

Behaviour: a package's memory root becomes the hive's memory root. Hive and seat context now reaches turns through each hive's membership, so a shared seat sees each hive's own documents. Toolpack tool groups can only narrow the runtime's groups. stop hooks observe and cannot start a turn.

Validation

  • cargo fmt --all -- --check: clean
  • cargo clippy --all-targets --all-features -- -D warnings: clean
  • cargo build --all-targets --all-features: clean
  • cargo test --all-features: all pass
  • RUSTDOCFLAGS="-D warnings" cargo doc --no-deps --all-features: clean
  • .github/scripts/assert-pure.sh and .github/scripts/assert-openhuman-pin.sh (now also checks tinyflows-schedule): clean
  • cargo test --manifest-path examples/openhuman/Cargo.toml: 8 DeepSWE retry tests fail. proof::test probably fails for the same reason but was not reached. See above.
  • basic, hive, bench and driver_bench --episodes 200 run. hive_check reports no findings on every gallery package and on all five converted OpenHuman packages.
  • run_package on the integrations package: summary, shell tool, Python tool, an edited script picked up with no rebuild, and a script hook refusing a call.
  • Offline basic_hive and multi_hive binaries run with exit 0. deepswe_hive and pe1006_hive need Docker and live keys, so only their unit tests ran.

Tests

  • lang: wire pins for the new sections; one failing fixture per new validation rule (references, identities, shipped files, bounds, integration shapes such as sqlite-without-workspace and delegated profiles); integration-class edits including whole-file tools/ and skills/ edits; lowering precedence, toolpack expansion and feature switches; a pinned hive_check report for examples/broken/integrations.
  • exec: 48 unit tests and 1 doctest covering argv templating, stdin/stdout, JSON output, exit codes, process-group timeouts, environment scrubbing, interpreter-relative scripts, "text file busy" retries, and hooks.
  • openhuman: package-to-plan conversion and conflicts; end-to-end offline deployment where a seat runs a shell tool and a Python tool and a script hook refuses a call (with a control that turns hooks off); an unknown tool group is refused.

Documentation

  • Specs, ADR 0034 and the plan.
  • README, AGENTS.md (CLAUDE.md), ROADMAP, the spec and plan indexes, and docs/crate-dependencies.md.
  • Every touched crate, module and example README, and the crate rustdoc overviews.
  • Wiki (pointer bumped): new Integrations and Executable-tools pages, and updated Hive-language*, Host-integration and Integration-crates. The wiki commits are on a hive-language-integrations branch of the wiki repo and need merging there.

Checklist

  • One logical change: the user asked for the bump, the language integrations, the examples and the docs as a single PR
  • No new #[allow(...)], #[ignore], or relaxed lints
  • No secrets, tokens, or .env contents in the diff or the description

senamakel and others added 30 commits October 22, 2026 23:39
Update the vendored openhuman subproject to the latest commit.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Move the openhuman, tinytools and tinymemory git pins to the revisions the
vendored submodule now carries, and mirror OpenHuman's own patch section with
paths re-rooted under vendor/openhuman so the workspace root resolves each
crate to a single copy. Add patch entries for tinybus and tinytools-std so the
storage, wallet and MCP modules share one bus interface and one Tool trait
instead of compiling a second set of types.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Refresh the openhuman example's dependency set, pulling in newer crypto and async crates and dropping unused ones. The lockfile was regenerated to match.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Replace direct openhuman_core references for turn origin, trusted
automation source, and tool hook events with their openhuman_embed
equivalents, and use the ToolHookDecision constructors instead of
building variants by hand. This keeps the deploy and host layers
depending only on the embed seam rather than core internals.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Replace the verbose matches! checks in the permission tests with the
is_deny helper and direct boolean comparisons, which keeps the same
coverage while making the assertions easier to read.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The permission tests asserted deny and allow in the wrong direction, so
they passed only when the engine returned the opposite of the intended
decision. The assertions are now written directly against is_deny, and the
isolated-session case checks the write denial before switching the tool
name so each expectation matches the behaviour under test.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Add atomicwrites, clack-private-fs, fs4, and rustix to the openhuman crate's
dependency set, pulling in the corresponding lockfile entries. These support
atomic file writes and cross-process locking needed by the secrets storage
work.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Moved memory root validation, identity resolution, and cron schedule
validation onto the extracted tinymemory and tinyflows crates, and
updated the agent registry path. The scheduler now runs with a
DispatchCtx so it can reach the runtime context, and a new error
variant surfaces memory engine failures.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Wire the tinyflows scheduler crate into the workspace and the openhuman
crate, pinning it to the git revision OpenHuman vendors and patching it
onto the in-tree copy so its Schedule type matches what openhuman::cron
re-exports. The testkit feature is enabled to expose InMemorySessionStores
for the memory session store.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Reformat the config validation, deploy permission gate, host runner, and
memory module to satisfy rustfmt, including the permission tests. No
behaviour changes.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Several assertions in the permission tests had their deny checks inverted, so
they passed for the wrong reason. The polarity of each check is now aligned
with the behaviour it is meant to verify, and the isolated-session case sets
the tool name before asserting on it.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The openhuman-embed dependency now enables the modules feature, since OpenHuman serves MCP through its TinyMCP module and calls fail with "module unavailable" without the module host. The MCP test registers the statically linked tinymcp module and switches the module source to linked so tests load it in-process instead of downloading the pinned release.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The lockfile now records the tinymcp crate and the dirs 7.0.0 and
tinybox-bus 0.1.36 packages it pulls in, alongside the existing dirs 6.0.0
and tinybox-bus 0.2.0 entries that other crates still resolve to.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Adjust the test to reference ModuleSourceMode through the config schema module, matching the relocated type.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Print the coordinator transcript and the tail of each received request body
before the assertion so failures can be diagnosed from the captured output.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The debug output in the scheduled MCP envelope test now parses each
captured request body as JSON and prints tool-role messages, tool calls,
and the names of any MCP tools, instead of dumping the raw body. This
makes it easier to see what the model actually received when the
assertion fails.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Add env_logger to the openhuman crate's dev-dependencies so the MCP
deployment tests can initialise logging, and pull in the resulting
transitive crates in the lockfile.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Removed several transitive crates from the lockfile after trimming the
openhuman crate's dependency list, and added coverage to the MCP deploy
tests for the newly exercised paths.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The separate Memory and MemoryEngine variants both wrapped memory engine
failures, so they are merged into a single Memory variant backed by
tinymemory_api::Error. This removes the redundant openhuman_core error
path and simplifies matching for callers.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Replace the stop-hook tool-target rule with a matcher restriction, since stop hooks have no tool, and add a check for argv placeholders that name no argument.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Regenerate the example lockfile to pick up updated crate versions and new transitive dependencies. Also add the executable tools spec document.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Record the new decision that the hive language defines the deployment, superseding the parallel schema of the OpenHuman hive configuration spec, and link it from the ADR index.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Redirect the tinyflows-schedule crate to the in-tree vendored source so the
dependency graph resolves against the local copy instead of the git remote.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The async context loading test now spawns its body onto a tokio worker
thread instead of running it directly on the test thread, since the
runtime build future outgrows the default test stack and only workers
get the larger stack size.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The openhuman example lockfile no longer pins tinyflows-bus and
tinyflows-schedule to a specific git revision, so the duplicate
tinyflows-bus entry and its source annotations are removed and the
remaining references resolve to the local path dependency.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The deepswe hive example now retries provider calls that fail with
DispatchAdmission, matching the other transient core errors. A test
fixture was also updated to reference the re-exported ToolHookEvent
path, and a stray semicolon was removed from a runner test.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The pin assertion script now also checks the tinyflows-schedule dependency,
resolving the tinyflows submodule commit inside the OpenHuman vendor tree so
that a stale or mismatched pin is caught in CI.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Introduce a new integration module for the language document layer, along with a tool helper that exposes it. This provides the scaffolding needed to wire document handling into the broader integration surface.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
senamakel and others added 25 commits October 23, 2026 00:54
Rework the hive example to configure the declared manifest directly
instead of mutating a resolved config, so model names, MCP servers, and
routing are set on the package before deployment. Each seat now gets its
own tinyhive-<seat> MCP server and the retry prompt targets that server
by name.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Packages can now carry the runtime, provider, model, MCP, skill, tool,
permission, profile, hook, session, feature and workflow sections of
`hive.json`, plus a seat's profile, model, toolpacks, hooks, permissions,
limits and extra context. Tool sources under `tools/` and skill bundles
under `skills/` are parsed as documents, and the integration edit class
owns them so a constitution can permit or refuse edits to them.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Document that `HookRunner::stop` still returns a `followup` printed by a
stop hook, but the OpenHuman adapter observes and discards it because a
turn is authorized only by the coordinator's round. Also note that fixed
`tools/…` arguments of `command` resolve against the package root, and
box the `run_package` example's futures to keep its stack within bounds.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The exec crate README now explains that it runs processes and so sits
outside the pure crates guarded by assert-pure.sh, and that a stop hook
cannot start another turn. The run README and its test README describe
how a tools/… program and every fixed tools/… element of command are
joined to the absolute package root, while substituted argv placeholders
are left alone. The run_package example switches to writeln! for its

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The manifest tests now load checked-in packages through PackageSource and assert against the lowered hive and package structures instead of the old HiveConfig, covering canonical file output, seat ids, policy widths, integration limits and MCP tool boundaries.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Replace serde_yaml_ng with the new tinyhivemind-exec crate in the
openhuman example's dependency graph, dropping the transitive
unsafe-libyaml package.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
… hives

The crate READMEs now describe hive packages as the only deployment input, with `language::PackageSource` reading and checking a directory and `deploy::HiveDeployment::from_packages` lowering one or more onto a single runtime. The example hives were regenerated against the current package format, and the retired `canonicalize` binary was dropped.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Hive deployment now takes checked tinyhivemind-lang packages rather than the retired HiveConfig manifests, with HiveDeployment::from_packages building one runtime from one or more packages. Package extras such as executable tools, script hooks, skill staging and session settings are attached during assembly, and the example hives and docs were updated to the package layout.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Stop hooks no longer return a follow-up prompt, so `HookRunner::stop`
now returns nothing and ignores each hook's stdout and failures. This
keeps a stop hook from starting another turn, leaving it purely
observational.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Stop hooks now run to completion and return no value, so a hook can no
longer start a follow-up turn; only the coordinator's round authorizes a
turn. The docs and spec were updated to match, and the language
integration spec now states that executable tools reach a seat only
through a toolpack.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Adds a debug print in the scripted hive responder so the final message is
visible whenever a retry is triggered by a tool role, making it easier to
diagnose unexpected retry behaviour in tests.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Add env_logger initialisation to the test that checks a new hive turn does
not inherit a prior action acceptance, so log output is captured when the
test runs.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Drop a stray eprintln that dumped the last message on every tool-role
response and an unused env_logger initializer in the retry test, keeping
the test output clean.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Reformatted a few long assertions and tuple entries in the openhuman
manifest tests to satisfy rustfmt line width limits. No test behaviour
changed.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Reformatted the retain call on the seat's allowed tools list to wrap across multiple lines, matching the project's formatting style. No behaviour change.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Rewrite the hive example READMEs around the hive language package layout,
describing hive.json as the canonical manifest, how binaries read and
deploy packages without writing back, and how run-only values such as
executable paths and model routes are supplied at deploy time.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The example READMEs now describe hive language packages instead of manifests, covering how each binary reads its packages, sets endpoints and run paths, then checks and deploys them. File tables and the multi_hive walkthrough were refreshed to match the new seat, role and provider-reference terminology.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The README now states that seats get their memory tools from their own
`tinyhive-<seat>` MCP server rather than a single shared `tinyhive` server,
matching how the tools are actually served.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Hive context now reaches a turn through the seat's membership rather than
being concatenated into the seat prompt, so a seat shared across several
hives sees each hive's own documents instead of a merged blob.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Hive and seat context documents are now registered in the config and
referenced from each membership instead of being dropped, so shared
context reaches a turn through the seat's membership per hive. The
hive's memory root is also carried through from the package rather than
left unset, and the profile no longer takes unused hive and skills
arguments.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Enable the openhuman-embed modules feature and register the statically
linked tinymcp module in the MCP deploy test so the module is available
during the run. The assertion no longer tolerates the module being
unavailable, since the test now proves the hive gate lets the call
through rather than accepting either outcome.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Add env_logger to the openhuman crate's dev-dependencies so the MCP deploy
tests can initialise logging, and refresh Cargo.lock with the new transitive
dependencies.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
The `modules` feature of `openhuman-embed` is only needed by tests, so it now
lives in dev-dependencies instead of the main dependency. The MCP deploy test
also configures a linked module source and ensures the tinymcp module is loaded
before exercising remote-effect classification.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
Remove the env_logger, dirs, and jiff dependency tree from the openhuman crate since nothing in the deploy test path uses them anymore. The lockfile and manifest shrink accordingly, and the MCP test no longer pulls in the removed crates.

Auto-committed-on: cuttlefish
Co-authored-by: Medulla <medulla@tinyhumans.ai>
@coderabbitai

coderabbitai Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

Warning

Review limit reached

  • Run on-demand review

This review includes 297 billable files and costs up to $74.25.

View limit details

Learn how review limits work.

Review configuration:

Run configuration
  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 3bfb5cd7-0899-4093-a205-660590907e60
Commits

Reviewing files that changed from the base of the PR and between c2ad418 and ec57763.

Files ignored due to path filters: 2
  • Cargo.lock is excluded by !**/*.lock
  • examples/openhuman/Cargo.lock is excluded by !**/*.lock
Files selected for processing: 297
  • .github/scripts/assert-openhuman-pin.sh
  • AGENTS.md
  • Cargo.toml
  • README.md
  • ROADMAP.md
  • crates/tinyhivemind-exec/Cargo.toml
  • crates/tinyhivemind-exec/README.md
  • crates/tinyhivemind-exec/src/README.md
  • crates/tinyhivemind-exec/src/context/README.md
  • crates/tinyhivemind-exec/src/context/mod.rs
  • crates/tinyhivemind-exec/src/context/test.rs
  • crates/tinyhivemind-exec/src/error/README.md
  • crates/tinyhivemind-exec/src/error/mod.rs
  • crates/tinyhivemind-exec/src/hook/README.md
  • crates/tinyhivemind-exec/src/hook/matcher.rs
  • crates/tinyhivemind-exec/src/hook/mod.rs
  • crates/tinyhivemind-exec/src/hook/test/README.md
  • crates/tinyhivemind-exec/src/hook/test/events.rs
  • crates/tinyhivemind-exec/src/hook/test/fixtures/tools/allow.sh
  • crates/tinyhivemind-exec/src/hook/test/fixtures/tools/chatter.sh
  • crates/tinyhivemind-exec/src/hook/test/fixtures/tools/deny.sh
  • crates/tinyhivemind-exec/src/hook/test/fixtures/tools/deny_silently.sh
  • crates/tinyhivemind-exec/src/hook/test/fixtures/tools/fail.sh
  • crates/tinyhivemind-exec/src/hook/test/fixtures/tools/followup.sh
  • crates/tinyhivemind-exec/src/hook/test/fixtures/tools/record.sh
  • crates/tinyhivemind-exec/src/hook/test/fixtures/tools/slow.sh
  • crates/tinyhivemind-exec/src/hook/test/matcher.rs
  • crates/tinyhivemind-exec/src/hook/test/mod.rs
  • crates/tinyhivemind-exec/src/hook/test/pre_tool_use.rs
  • crates/tinyhivemind-exec/src/hook/test/support.rs
  • crates/tinyhivemind-exec/src/lib.rs
  • crates/tinyhivemind-exec/src/program/README.md
  • crates/tinyhivemind-exec/src/program/mod.rs
  • crates/tinyhivemind-exec/src/program/test/README.md
  • crates/tinyhivemind-exec/src/program/test/fixtures/tools/fail.sh
  • crates/tinyhivemind-exec/src/program/test/fixtures/tools/flood.sh
  • crates/tinyhivemind-exec/src/program/test/fixtures/tools/greet.sh
  • crates/tinyhivemind-exec/src/program/test/mod.rs
  • crates/tinyhivemind-exec/src/run/README.md
  • crates/tinyhivemind-exec/src/run/command.rs
  • crates/tinyhivemind-exec/src/run/mod.rs
  • crates/tinyhivemind-exec/src/run/process.rs
  • crates/tinyhivemind-exec/src/run/test/README.md
  • crates/tinyhivemind-exec/src/run/test/argv.rs
  • crates/tinyhivemind-exec/src/run/test/environment.rs
  • crates/tinyhivemind-exec/src/run/test/fixtures/tools/echo_args.sh
  • crates/tinyhivemind-exec/src/run/test/fixtures/tools/echo_stdin.sh
  • crates/tinyhivemind-exec/src/run/test/fixtures/tools/env.sh
  • crates/tinyhivemind-exec/src/run/test/fixtures/tools/fail.sh
  • crates/tinyhivemind-exec/src/run/test/fixtures/tools/flood.sh
  • crates/tinyhivemind-exec/src/run/test/fixtures/tools/json_ok.sh
  • crates/tinyhivemind-exec/src/run/test/fixtures/tools/not_json.sh
  • crates/tinyhivemind-exec/src/run/test/fixtures/tools/pwd.sh
  • crates/tinyhivemind-exec/src/run/test/fixtures/tools/sleeper.sh
  • crates/tinyhivemind-exec/src/run/test/mod.rs
  • crates/tinyhivemind-exec/src/run/test/process.rs
  • crates/tinyhivemind-exec/src/run/test/support.rs
  • crates/tinyhivemind-lang/README.md
  • crates/tinyhivemind-lang/examples/README.md
  • crates/tinyhivemind-lang/examples/broken/README.md
  • crates/tinyhivemind-lang/examples/broken/integrations/README.md
  • crates/tinyhivemind-lang/examples/broken/integrations/constitution.json
  • crates/tinyhivemind-lang/examples/broken/integrations/context/README.md
  • crates/tinyhivemind-lang/examples/broken/integrations/context/style.md
  • crates/tinyhivemind-lang/examples/broken/integrations/hive.json
  • crates/tinyhivemind-lang/examples/broken/integrations/memory.json
  • crates/tinyhivemind-lang/examples/broken/integrations/roles/README.md
  • crates/tinyhivemind-lang/examples/broken/integrations/roles/lead.md
  • crates/tinyhivemind-lang/examples/broken/integrations/roles/researcher.md
  • crates/tinyhivemind-lang/examples/broken/integrations/seats/README.md
  • crates/tinyhivemind-lang/examples/broken/integrations/seats/lead.md
  • crates/tinyhivemind-lang/examples/broken/integrations/seats/scout.md
  • crates/tinyhivemind-lang/examples/broken/integrations/skills/release-notes/SKILL.md
  • crates/tinyhivemind-lang/examples/broken/integrations/tools/README.md
  • crates/tinyhivemind-lang/examples/broken/integrations/tools/grep_repo.sh
  • crates/tinyhivemind-lang/examples/broken/integrations/tools/guard_shell.sh
  • crates/tinyhivemind-lang/examples/hive_check/test.rs
  • crates/tinyhivemind-lang/examples/hive_view/render.rs
  • crates/tinyhivemind-lang/examples/hives/README.md
  • crates/tinyhivemind-lang/examples/hives/euler-hive/hive.json
  • crates/tinyhivemind-lang/examples/hives/incident-response/hive.json
  • crates/tinyhivemind-lang/examples/hives/integrations/README.md
  • crates/tinyhivemind-lang/examples/hives/integrations/constitution.json
  • crates/tinyhivemind-lang/examples/hives/integrations/context/README.md
  • crates/tinyhivemind-lang/examples/hives/integrations/context/style.md
  • crates/tinyhivemind-lang/examples/hives/integrations/hive.json
  • crates/tinyhivemind-lang/examples/hives/integrations/memory.json
  • crates/tinyhivemind-lang/examples/hives/integrations/roles/README.md
  • crates/tinyhivemind-lang/examples/hives/integrations/roles/lead.md
  • crates/tinyhivemind-lang/examples/hives/integrations/roles/researcher.md
  • crates/tinyhivemind-lang/examples/hives/integrations/seats/README.md
  • crates/tinyhivemind-lang/examples/hives/integrations/seats/lead.md
  • crates/tinyhivemind-lang/examples/hives/integrations/seats/scout.md
  • crates/tinyhivemind-lang/examples/hives/integrations/skills/release-notes/SKILL.md
  • crates/tinyhivemind-lang/examples/hives/integrations/tools/README.md
  • crates/tinyhivemind-lang/examples/hives/integrations/tools/grep_repo.sh
  • crates/tinyhivemind-lang/examples/hives/integrations/tools/guard_shell.sh
  • crates/tinyhivemind-lang/examples/hives/integrations/tools/word_count.py
  • crates/tinyhivemind-lang/examples/hives/math-panel/hive.json
  • crates/tinyhivemind-lang/examples/hives/math-swarm/hive.json
  • crates/tinyhivemind-lang/examples/hives/memory-guild/hive.json
  • crates/tinyhivemind-lang/examples/hives/research-debate/hive.json
  • crates/tinyhivemind-lang/examples/hives/review-board/hive.json
  • crates/tinyhivemind-lang/examples/hives/self-improving/hive.json
  • crates/tinyhivemind-lang/src/README.md
  • crates/tinyhivemind-lang/src/check/README.md
  • crates/tinyhivemind-lang/src/check/rules.rs
  • crates/tinyhivemind-lang/src/check/test/README.md
  • crates/tinyhivemind-lang/src/check/test/integration.rs
  • crates/tinyhivemind-lang/src/check/test/mod.rs
  • crates/tinyhivemind-lang/src/diagnostic/README.md
  • crates/tinyhivemind-lang/src/diagnostic/test.rs
  • crates/tinyhivemind-lang/src/diagnostic/types.rs
  • crates/tinyhivemind-lang/src/document/README.md
  • crates/tinyhivemind-lang/src/document/defaults.rs
  • crates/tinyhivemind-lang/src/document/integration/README.md
  • crates/tinyhivemind-lang/src/document/integration/mod.rs
  • crates/tinyhivemind-lang/src/document/integration/tool.rs
  • crates/tinyhivemind-lang/src/document/integration/types.rs
  • crates/tinyhivemind-lang/src/document/mod.rs
  • crates/tinyhivemind-lang/src/document/types.rs
  • crates/tinyhivemind-lang/src/error/mod.rs
  • crates/tinyhivemind-lang/src/lib.rs
  • crates/tinyhivemind-lang/src/lowering/README.md
  • crates/tinyhivemind-lang/src/lowering/integration.rs
  • crates/tinyhivemind-lang/src/lowering/mod.rs
  • crates/tinyhivemind-lang/src/lowering/test.rs
  • crates/tinyhivemind-lang/src/lowering/types.rs
  • crates/tinyhivemind-lang/src/patch/README.md
  • crates/tinyhivemind-lang/src/patch/derive.rs
  • crates/tinyhivemind-lang/src/patch/mod.rs
  • crates/tinyhivemind-lang/src/patch/types.rs
  • crates/tinyhivemind-lang/src/validation/README.md
  • crates/tinyhivemind-lang/src/validation/integration.rs
  • crates/tinyhivemind-lang/src/validation/mod.rs
  • crates/tinyhivemind-lang/src/validation/test/README.md
  • crates/tinyhivemind-lang/src/validation/test/integration.rs
  • crates/tinyhivemind-lang/src/validation/test/mod.rs
  • crates/tinyhivemind-lang/src/validation/test/rules.rs
  • crates/tinyhivemind-lang/tests/euler_hive_package.rs
  • crates/tinyhivemind-lang/tests/example_packages.rs
  • crates/tinyhivemind-lang/tests/fixtures/deepswe/hive.json
  • crates/tinyhivemind-lang/tests/fixtures/pe1006/hive.json
  • crates/tinyhivemind-lang/tests/gallery_packages.rs
  • crates/tinyhivemind-openhuman/Cargo.toml
  • crates/tinyhivemind-openhuman/README.md
  • crates/tinyhivemind-openhuman/examples/README.md
  • crates/tinyhivemind-openhuman/examples/run_package.rs
  • crates/tinyhivemind-openhuman/examples/run_package/README.md
  • crates/tinyhivemind-openhuman/examples/run_package/test.rs
  • crates/tinyhivemind-openhuman/src/README.md
  • crates/tinyhivemind-openhuman/src/config/README.md
  • crates/tinyhivemind-openhuman/src/config/mod.rs
  • crates/tinyhivemind-openhuman/src/config/parse.rs
  • crates/tinyhivemind-openhuman/src/config/test/README.md
  • crates/tinyhivemind-openhuman/src/config/test/directory.rs
  • crates/tinyhivemind-openhuman/src/config/test/mod.rs
  • crates/tinyhivemind-openhuman/src/config/test/validation.rs
  • crates/tinyhivemind-openhuman/src/config/types.rs
  • crates/tinyhivemind-openhuman/src/config/validate.rs
  • crates/tinyhivemind-openhuman/src/deploy/README.md
  • crates/tinyhivemind-openhuman/src/deploy/compatibility.rs
  • crates/tinyhivemind-openhuman/src/deploy/factory.rs
  • crates/tinyhivemind-openhuman/src/deploy/hooks.rs
  • crates/tinyhivemind-openhuman/src/deploy/mod.rs
  • crates/tinyhivemind-openhuman/src/deploy/packages.rs
  • crates/tinyhivemind-openhuman/src/deploy/permission.rs
  • crates/tinyhivemind-openhuman/src/deploy/profile.rs
  • crates/tinyhivemind-openhuman/src/deploy/test/README.md
  • crates/tinyhivemind-openhuman/src/deploy/test/mcp.rs
  • crates/tinyhivemind-openhuman/src/deploy/test/mod.rs
  • crates/tinyhivemind-openhuman/src/deploy/test/packages.rs
  • crates/tinyhivemind-openhuman/src/deploy/test/permission.rs
  • crates/tinyhivemind-openhuman/src/deploy/test/preflight.rs
  • crates/tinyhivemind-openhuman/src/deploy/test/profile.rs
  • crates/tinyhivemind-openhuman/src/deploy/test/support.rs
  • crates/tinyhivemind-openhuman/src/error.rs
  • crates/tinyhivemind-openhuman/src/host/runner.rs
  • crates/tinyhivemind-openhuman/src/host/runner_test.rs
  • crates/tinyhivemind-openhuman/src/host/test.rs
  • crates/tinyhivemind-openhuman/src/language/README.md
  • crates/tinyhivemind-openhuman/src/language/mod.rs
  • crates/tinyhivemind-openhuman/src/language/package.rs
  • crates/tinyhivemind-openhuman/src/language/plan.rs
  • crates/tinyhivemind-openhuman/src/language/plan_test.rs
  • crates/tinyhivemind-openhuman/src/language/test.rs
  • crates/tinyhivemind-openhuman/src/lib.rs
  • crates/tinyhivemind-openhuman/src/memory/mod.rs
  • crates/tinyhivemind-openhuman/src/memory/store_test.rs
  • docs/adr/0034-the-hive-language-defines-the-deployment.md
  • docs/adr/README.md
  • docs/crate-dependencies.md
  • docs/plans/2026-10-23-hive-language-integrations.md
  • docs/plans/README.md
  • docs/specs/README.md
  • docs/specs/executable-tools.md
  • docs/specs/hive-language-integrations.md
  • docs/specs/hive-language.md
  • docs/specs/openhuman-hive-config.md
  • examples/openhuman/Cargo.toml
  • examples/openhuman/README.md
  • examples/openhuman/hives/README.md
  • examples/openhuman/hives/basic_hive/README.md
  • examples/openhuman/hives/basic_hive/constitution.json
  • examples/openhuman/hives/basic_hive/context/README.md
  • examples/openhuman/hives/basic_hive/hive.json
  • examples/openhuman/hives/basic_hive/memory.json
  • examples/openhuman/hives/basic_hive/profiles/README.md
  • examples/openhuman/hives/basic_hive/roles/planner.md
  • examples/openhuman/hives/basic_hive/roles/reviewer.md
  • examples/openhuman/hives/basic_hive/seats/alice.md
  • examples/openhuman/hives/basic_hive/seats/bob.md
  • examples/openhuman/hives/deepswe_hive/README.md
  • examples/openhuman/hives/deepswe_hive/constitution.json
  • examples/openhuman/hives/deepswe_hive/context/README.md
  • examples/openhuman/hives/deepswe_hive/hive.json
  • examples/openhuman/hives/deepswe_hive/memory.json
  • examples/openhuman/hives/deepswe_hive/profiles/README.md
  • examples/openhuman/hives/deepswe_hive/profiles/implementer.md
  • examples/openhuman/hives/deepswe_hive/profiles/lead.md
  • examples/openhuman/hives/deepswe_hive/profiles/reviewer.md
  • examples/openhuman/hives/deepswe_hive/profiles/tester.md
  • examples/openhuman/hives/deepswe_hive/roles/implementer.md
  • examples/openhuman/hives/deepswe_hive/roles/lead.md
  • examples/openhuman/hives/deepswe_hive/roles/reviewer.md
  • examples/openhuman/hives/deepswe_hive/roles/tester.md
  • examples/openhuman/hives/deepswe_hive/seats/implementer.md
  • examples/openhuman/hives/deepswe_hive/seats/lead.md
  • examples/openhuman/hives/deepswe_hive/seats/reviewer.md
  • examples/openhuman/hives/deepswe_hive/seats/tester.md
  • examples/openhuman/hives/multi_hive/README.md
  • examples/openhuman/hives/multi_hive/context/README.md
  • examples/openhuman/hives/multi_hive/hive-a/README.md
  • examples/openhuman/hives/multi_hive/hive-a/constitution.json
  • examples/openhuman/hives/multi_hive/hive-a/hive.json
  • examples/openhuman/hives/multi_hive/hive-a/memory.json
  • examples/openhuman/hives/multi_hive/hive-a/roles/assistant.md
  • examples/openhuman/hives/multi_hive/hive-a/roles/implementer.md
  • examples/openhuman/hives/multi_hive/hive-a/roles/planner.md
  • examples/openhuman/hives/multi_hive/hive-a/seats/architect.md
  • examples/openhuman/hives/multi_hive/hive-a/seats/helper.md
  • examples/openhuman/hives/multi_hive/hive-a/seats/shared.md
  • examples/openhuman/hives/multi_hive/hive-b/README.md
  • examples/openhuman/hives/multi_hive/hive-b/constitution.json
  • examples/openhuman/hives/multi_hive/hive-b/context/review.md
  • examples/openhuman/hives/multi_hive/hive-b/hive.json
  • examples/openhuman/hives/multi_hive/hive-b/memory.json
  • examples/openhuman/hives/multi_hive/hive-b/roles/observer.md
  • examples/openhuman/hives/multi_hive/hive-b/roles/reviewer.md
  • examples/openhuman/hives/multi_hive/hive-b/seats/reviewer.md
  • examples/openhuman/hives/multi_hive/hive-b/seats/shared.md
  • examples/openhuman/hives/multi_hive/hive.json
  • examples/openhuman/hives/multi_hive/profiles/README.md
  • examples/openhuman/hives/pe1006_hive/README.md
  • examples/openhuman/hives/pe1006_hive/constitution.json
  • examples/openhuman/hives/pe1006_hive/context/README.md
  • examples/openhuman/hives/pe1006_hive/context/research.md
  • examples/openhuman/hives/pe1006_hive/context/sealed.md
  • examples/openhuman/hives/pe1006_hive/hive.json
  • examples/openhuman/hives/pe1006_hive/memory.json
  • examples/openhuman/hives/pe1006_hive/profiles/README.md
  • examples/openhuman/hives/pe1006_hive/profiles/checker.md
  • examples/openhuman/hives/pe1006_hive/profiles/lead.md
  • examples/openhuman/hives/pe1006_hive/profiles/researcher.md
  • examples/openhuman/hives/pe1006_hive/profiles/solver.md
  • examples/openhuman/hives/pe1006_hive/profiles/theory.md
  • examples/openhuman/hives/pe1006_hive/roles/checker.md
  • examples/openhuman/hives/pe1006_hive/roles/lead.md
  • examples/openhuman/hives/pe1006_hive/roles/researcher.md
  • examples/openhuman/hives/pe1006_hive/roles/solver.md
  • examples/openhuman/hives/pe1006_hive/roles/theory.md
  • examples/openhuman/hives/pe1006_hive/seats/checker.md
  • examples/openhuman/hives/pe1006_hive/seats/lead.md
  • examples/openhuman/hives/pe1006_hive/seats/researcher.md
  • examples/openhuman/hives/pe1006_hive/seats/solver.md
  • examples/openhuman/hives/pe1006_hive/seats/theory.md
  • examples/openhuman/src/README.md
  • examples/openhuman/src/bin/README.md
  • examples/openhuman/src/bin/basic_hive.rs
  • examples/openhuman/src/bin/deepswe_hive.rs
  • examples/openhuman/src/bin/deepswe_hive/test/retry/response.rs
  • examples/openhuman/src/bin/euler_hive.rs
  • examples/openhuman/src/bin/euler_hive/package.rs
  • examples/openhuman/src/bin/euler_hive/test/package.rs
  • examples/openhuman/src/bin/multi_hive.rs
  • examples/openhuman/src/bin/pe1006_hive.rs
  • examples/openhuman/src/bin/pe1006_hive/README.md
  • examples/openhuman/src/bin/pe1006_hive/episode.rs
  • examples/openhuman/src/bin/pe1006_hive/round.rs
  • examples/openhuman/src/bin/pe1006_hive/test.rs
  • examples/openhuman/src/lib.rs
  • examples/openhuman/src/proof/README.md
  • examples/openhuman/src/test.rs
  • examples/openhuman/tests/README.md
  • examples/openhuman/tests/manifests.rs
  • vendor/openhuman
  • wiki
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

@senamakel
senamakel marked this pull request as ready for review October 24, 2026 20:00
@senamakel
senamakel merged commit f2f7b0a into main Oct 24, 2026
6 of 10 checks passed
@tinysweeper

tinysweeper Bot commented Oct 24, 2026

Copy link
Copy Markdown

Tiny Sweeper review

⏳ Reviewing ec577630adbf now. The last completed report, when available, remains below until this pass finishes.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review 🔄 Running since 2026-10-24T20:00:47.853325Z ec57763 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

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.

1 participant