Skip to content

njbinbin-piscis/piscis-engine

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

80 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

piscis-engine

OS / UI-neutral agent runtime kernel, extracted from openpiscis so it can be shared by multiple host products (the openpiscis desktop app and the codez AI IDE).

This repo contains only the host-agnostic layers — it never depends on Tauri, any GUI framework, or platform-specific tooling. Hosts inject all of that through the trait contracts in piscis-core.

Crates

Crate Role
piscis-core Pure contracts: HostRuntime / EventSink / Notifier / HostTools / SecretsStore + shared schema types. Depends only on serde / chrono / anyhow / async-trait.
piscis-kernel The agent runtime: agent loop + harnesses, LLM adapters (claude / openai / qwen / deepseek / kimi / minimax / zhipu), SQLite store + encrypted settings, memory + Dream consolidation, policy / approval, scheduler, security, and platform-neutral tools (file_*, shell, code_run, web_search, ssh, mcp, …).
piscis-cli Headless host adapter + the openpiscis-headless binary (NDJSON streaming, env-var secrets). Cross-platform agent runner for CI / evals / IDE integrations.

Build & test

cargo build                                   # whole workspace
cargo test  -p piscis-core -p piscis-kernel -p piscis-cli --lib --bins
cargo clippy -p piscis-core -p piscis-kernel -p piscis-cli --all-targets -- -D warnings
cargo build -p piscis-cli --release --bin openpiscis-headless

Consuming this engine from a host

Hosts depend on the crates as path (local dev) or git (CI / release) dependencies. With both repos checked out as siblings:

Projects/
├── piscis-engine/      ← this repo
├── openpiscis/         ← desktop host
└── codez/             ← AI IDE host

a host's Cargo.toml references:

[dependencies]
piscis-core   = { path = "../../piscis-engine/piscis-core" }
piscis-kernel = { path = "../../piscis-engine/piscis-kernel" }
# Swap for a git source once this repo has a published remote:
# piscis-kernel = { git = "https://…/piscis-engine", package = "piscis-kernel" }

Provenance

Extracted from openpiscis with git filter-repo, preserving the full commit history of piscis-core / piscis-kernel / piscis-cli. The desktop-coupled piscis_compact_one benchmark binary (which links piscis-desktop) was intentionally left behind in openpiscis.

About

OS/UI-neutral agent runtime kernel (pisci-core / pisci-kernel / pisci-cli), shared by openpisci and codez.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors