diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c3bf7ca..1f335ec 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -256,10 +256,10 @@ jobs: steps: - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - - name: Install Rust toolchain - uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # stable + - name: Install Rust toolchain (nightly for docsrs features) + uses: dtolnay/rust-toolchain@f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 # master with: - toolchain: stable + toolchain: nightly - name: Configure sccache uses: mozilla-actions/sccache-action@676c0e67b665684f17941acf5cc3af83bcf10228 # v0.0.6 @@ -271,7 +271,7 @@ jobs: cache-on-failure: true - name: Build documentation - run: cargo doc --no-deps --all-features --locked + run: cargo doc --no-deps --features cli --locked env: RUSTDOCFLAGS: "-D warnings --cfg docsrs" diff --git a/Cargo.toml b/Cargo.toml index 2c78ea7..0d5c1cb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "reasonkit-core" -version = "0.1.4" +version = "0.1.6" edition = "2021" rust-version = "1.75" authors = ["ReasonKit Team "] @@ -108,7 +108,7 @@ serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" serde_yaml = "0.9" base64 = "0.22" -web-sys = { version = "0.3.83", features = ["ReadableStream"] } +# web-sys removed - was unused (WASM-only crate not needed for native builds) # PDF Processing lopdf = "0.33" @@ -228,6 +228,7 @@ hyper = "1" # ============================================================================ [dev-dependencies] +reasonkit = { package = "reasonkit-core", path = "." } tokio-test = "0.4" tempfile = "3.10" pretty_assertions = "1.4" diff --git a/README.md b/README.md index cc7a39e..ccfef46 100644 --- a/README.md +++ b/README.md @@ -14,13 +14,32 @@ ReasonKit - The Reasoning Engine - Auditable Reasoning for Production AI -[![CI](https://img.shields.io/github/actions/workflow/status/reasonkit/reasonkit-core/ci.yml?branch=main&style=flat-square&logo=github&label=CI&color=06b6d4&logoColor=06b6d4)](https://github.com/reasonkit/reasonkit-core/actions) +[![CI](https://img.shields.io/github/actions/workflow/status/reasonkit/reasonkit-core/ci.yml?branch=main&style=flat-square&logo=github&label=CI&color=06b6d4&logoColor=06b6d4)](https://github.com/reasonkit/reasonkit-core/actions/workflows/ci.yml) +[![Security](https://img.shields.io/github/actions/workflow/status/reasonkit/reasonkit-core/security.yml?branch=main&style=flat-square&logo=github&label=Security&color=10b981&logoColor=10b981)](https://github.com/reasonkit/reasonkit-core/actions/workflows/security.yml) [![Crates.io](https://img.shields.io/crates/v/reasonkit-core?style=flat-square&logo=rust&color=10b981&logoColor=f9fafb)](https://crates.io/crates/reasonkit-core) -[![Docs](https://img.shields.io/badge/docs-reasonkit.sh-06b6d4?style=flat-square&logo=readme&logoColor=f9fafb)](https://docs.reasonkit.sh) +[![docs.rs](https://img.shields.io/docsrs/reasonkit-core?style=flat-square&logo=docs.rs&color=06b6d4&logoColor=f9fafb)](https://docs.rs/reasonkit-core) +[![Downloads](https://img.shields.io/crates/d/reasonkit-core?style=flat-square&color=ec4899&logo=rust&logoColor=f9fafb)](https://crates.io/crates/reasonkit-core) [![License](https://img.shields.io/badge/license-Apache%202.0-a855f7?style=flat-square&labelColor=030508)](https://github.com/reasonkit/reasonkit-core/blob/main/LICENSE) -[![Architecture](https://img.shields.io/badge/stack-Rust%E2%80%A2MCP%E2%80%A2LLMs-f97316?style=flat-square&labelColor=030508)](https://reasonkit.sh) +[![Rust](https://img.shields.io/badge/rust-1.75+-f97316?style=flat-square&logo=rust&logoColor=f9fafb)](https://www.rust-lang.org/) +[![MCP](https://img.shields.io/badge/MCP-Compatible-10b981?style=flat-square&logo=data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9IiNmOWZhZmIiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBkPSJNMTIgMnYyME0yIDEyaDIwIi8+PC9zdmc+)](https://modelcontextprotocol.io) -[Website](https://reasonkit.sh) | [Documentation](https://docs.reasonkit.sh) | [GitHub](https://github.com/reasonkit/reasonkit-core) +[Website](https://reasonkit.sh) | [Pro](https://reasonkit.sh/pro/) | [Docs](https://docs.reasonkit.sh) | [Resources](https://reasonkit.sh/resources/) | [Enterprise](https://reasonkit.sh/enterprise/) | [About](https://reasonkit.sh/about/) | [GitHub](https://github.com/reasonkit/reasonkit-core) + + + +--- + +## 🚀 Quick Install + +
+ +```bash +curl -fsSL https://get.reasonkit.sh | bash +``` + +**Universal Installer** • All Platforms • All Shells • 30 Seconds + +[📖 Installation Guide](https://docs.reasonkit.sh/getting-started/installation) • [📦 Crates.io](https://crates.io/crates/reasonkit-core) • [📚 Docs.rs](https://docs.rs/reasonkit-core)
@@ -50,14 +69,11 @@ LLMs are fundamentally **probabilistic**. Same prompt → different outputs. Thi ## Quick Start -**1. Install (Universal)** +**Already installed?** Jump to [Choose Your Workflow](#-choose-your-workflow) or [How to Use](#how-to-use). -```bash -curl -fsSL https://get.reasonkit.sh | bash -# Installs 'rk' alias automatically -``` +**Need installation help?** See the [Installation Guide](https://docs.reasonkit.sh/getting-started/installation) or [Installation Section](#installation) below. -**2. Choose Your Workflow** +### 🤖 Choose Your Workflow ### 🤖 Claude Code (Opus 4.5) @@ -68,6 +84,8 @@ claude mcp add reasonkit -- rk serve-mcp claude "Use ReasonKit to analyze: Should we migrate to microservices?" ``` +**Learn more:** [Claude Code Integration](https://docs.reasonkit.sh/integrations/claude-code) + ### 🌐 ChatGPT (Browser) _Manual MCP Bridge. Injects the reasoning protocol directly into the chat._ @@ -79,6 +97,8 @@ rk protocol "Should we migrate to microservices?" | pbcopy # → Paste into ChatGPT: "Execute this protocol..." ``` +**Learn more:** [ChatGPT Integration](https://docs.reasonkit.sh/integrations/chatgpt) + ### ⚡ Gemini 3.0 Pro (API) _Native CLI integration with Google's latest preview._ @@ -88,9 +108,11 @@ export GEMINI_API_KEY=AIza... rk think --model gemini-3.0-pro-preview "Should we migrate to microservices?" ``` +**Learn more:** [Google Gemini Integration](https://docs.reasonkit.sh/integrations/google-gemini) • [All Provider Integrations](https://docs.reasonkit.sh/integrations) + > **Note:** The `rk` command is the shorthand alias for `rk`. -**30 seconds to structured reasoning.** +**30 seconds to structured reasoning.** See [How to Use](#how-to-use) for more examples. --- @@ -98,6 +120,8 @@ rk think --model gemini-3.0-pro-preview "Should we migrate to microservices?" Each ThinkTool acts as a **variance reduction filter**, transforming probabilistic outputs into increasingly deterministic reasoning paths. +**📖 Full Documentation:** [ThinkTools Guide](https://docs.reasonkit.sh/thinktools) • [API Reference](https://docs.rs/reasonkit-core/latest/reasonkit_core/thinktool/) + ![Tree-of-Thoughts vs Chain-of-Thought: 74% vs 4% Success Rate (NeurIPS 2023)](./brand/readme/tree_of_thoughts_vs_chain_of_thought.png) ![ReasonKit Protocol Chain - Turn Prompts into Protocols](./brand/readme/powercombo_process.png) @@ -122,7 +146,7 @@ Each ThinkTool acts as a **variance reduction filter**, transforming probabilist ## Reasoning Profiles -Pre-configured chains for different rigor levels: +Pre-configured chains for different rigor levels. See [Reasoning Profiles Guide](https://docs.reasonkit.sh/profiles) for detailed documentation. ![ReasonKit Core Reasoning Profiles Scale](./brand/readme/reasoning_profiles_scale.svg) @@ -204,6 +228,8 @@ VERDICT: conditional_yes | Confidence: 87% | Duration: 2.3s The ReasonKit architecture uses a **Protocol Engine** wrapper to enforce deterministic execution over probabilistic LLM outputs. +**📖 Full Documentation:** [Architecture Guide](https://docs.reasonkit.sh/architecture) • [API Reference](https://docs.rs/reasonkit-core/) + ![ReasonKit Core Architecture Exploded View](./brand/readme/core_architecture_exploded.png) ![ReasonKit ThinkTool Chain Architecture](./brand/readme/architecture_diagram.png) @@ -291,7 +317,7 @@ ReasonKit is written in Rust because reasoning infrastructure demands reliabilit | **Fearless Concurrency** | Run 100+ reasoning chains in parallel safely | | **Type Safety** | Errors caught at compile time, not runtime | -**Benchmarked Performance** ([view full report](./docs/reference/PERFORMANCE.md)): +**Benchmarked Performance** ([view full report](./docs/reference/PERFORMANCE.md) • [online version](https://docs.reasonkit.sh/reference/performance)): | Operation | Time | Target | | ---------------------------------- | ----- | ------ | @@ -312,6 +338,8 @@ ReasonKit's Rust foundation ensures deterministic, auditable execution every tim **Memory modules (storage, embedding, retrieval, RAPTOR, indexing) are available in the standalone [`reasonkit-mem`](https://crates.io/crates/reasonkit-mem) crate.** +**📖 Documentation:** [Memory Layer Guide](https://docs.reasonkit.sh/memory) • [Crates.io](https://crates.io/crates/reasonkit-mem) • [Docs.rs](https://docs.rs/reasonkit-mem) + Enable the `memory` feature to use these modules: ```toml @@ -333,17 +361,25 @@ reasonkit-core = { version = "0.1", features = ["memory"] } **Primary Method (Universal - All Platforms & Shells):** +
+ ```bash curl -fsSL https://get.reasonkit.sh | bash ``` +
+ +**📖 Full Installation Guide:** [docs.reasonkit.sh/getting-started/installation](https://docs.reasonkit.sh/getting-started/installation) + **Platform Support:** + - ✅ **Linux** (all distributions) - ✅ **macOS** (Intel & Apple Silicon) - ✅ **Windows** (WSL & Native PowerShell) - ✅ **FreeBSD** (experimental) **Shell Support:** + - ✅ **Bash** (auto-detected, PATH configured) - ✅ **Zsh** (auto-detected, PATH configured) - ✅ **Fish** (auto-detected, PATH configured) @@ -353,6 +389,7 @@ curl -fsSL https://get.reasonkit.sh | bash - ✅ **tcsh/csh/ksh** (basic support) **Features:** + - 🎨 Beautiful terminal UI with progress visualization - ⚡ Fast installation (~30 seconds) - 🔒 Secure (HTTPS-only, checksum verification) @@ -360,6 +397,8 @@ curl -fsSL https://get.reasonkit.sh | bash - 📊 Real-time build progress with ETA - 🔄 Automatic Rust installation if needed +**📖 Learn more:** [Installation Guide](https://docs.reasonkit.sh/getting-started/installation) • [Installation Audit Report](.internal/site-docs/INSTALL_AUDIT_2026-01-08.md) +
Alternative Methods @@ -372,7 +411,10 @@ git clone https://github.com/reasonkit/reasonkit-core cd reasonkit-core && cargo build --release ``` +**📦 Package Links:** [Crates.io](https://crates.io/crates/reasonkit-core) • [Docs.rs](https://docs.rs/reasonkit-core) • [GitHub Releases](https://github.com/reasonkit/reasonkit-core/releases) + **Windows (Native PowerShell):** + ```powershell irm https://get.reasonkit.sh/windows | iex ``` @@ -387,6 +429,8 @@ Python bindings available via PyO3 (build from source with `--features python`). **Command Structure:** `rk [options] [arguments]` +**📖 Full CLI Reference:** [CLI Documentation](https://docs.reasonkit.sh/reference/cli) • [API Reference](https://docs.rs/reasonkit-core/) + **Standard Operations:** ```bash @@ -417,12 +461,16 @@ rk trace list rk trace export ``` +**📖 Learn more:** [RAG Guide](https://docs.reasonkit.sh/memory/rag) • [Memory Layer Documentation](https://docs.reasonkit.sh/memory) + --- ## Contributing: The 5 Gates of Quality We demand excellence. All contributions must pass **The 5 Gates of Quality**: +**📖 Contributing Guide:** [CONTRIBUTING.md](CONTRIBUTING.md) • [Quality Gates Documentation](https://docs.reasonkit.sh/contributing/quality-gates) + ![ReasonKit Quality Gates Shield](./brand/readme/quality_gates_shield.png) ```bash @@ -440,7 +488,7 @@ cargo bench # Gate 5: Performance (<5% regression) **Quality Score Target:** 8.0/10 minimum for release. -See [CONTRIBUTING.md](CONTRIBUTING.md) for complete guidelines. +**📖 Complete Guidelines:** [CONTRIBUTING.md](CONTRIBUTING.md) • [Quality Metrics](https://docs.reasonkit.sh/contributing/quality-metrics) --- @@ -452,7 +500,7 @@ If you use ReasonKit in your project, add our badge: [![Reasoned By ReasonKit](https://raw.githubusercontent.com/reasonkit/reasonkit-core/main/brand/badges/reasoned-by.svg)](https://reasonkit.sh) ``` -See [Community Badges](brand/COMMUNITY_BADGES.md) for all variants and usage guidelines. +**📖 Badge Guide:** [Community Badges](brand/COMMUNITY_BADGES.md) • [All Variants](https://reasonkit.sh/resources/badges) --- @@ -464,6 +512,8 @@ See [Community Badges](brand/COMMUNITY_BADGES.md) for all variants and usage gui - [3D Assets](brand/3D_ASSET_STRATEGY.md) - WebGL integration guide - [Integration Guide](brand/BRANDING_INTEGRATION_GUIDE.md) - Complete integration instructions +**📖 Online Resources:** [Brand Guidelines](https://reasonkit.sh/resources/brand) • [Design System](https://reasonkit.sh/resources/design) + --- ## Design Philosophy: Honest Engineering @@ -488,10 +538,10 @@ See [Community Badges](brand/COMMUNITY_BADGES.md) for all variants and usage gui | **ThinkTools Chain** | ✅ Stable | Core reasoning protocols production-ready | | **MCP Server** | ✅ Stable | Model Context Protocol integration | | **CLI** | 🔶 Scaffolded | `mcp`, `serve-mcp`, `completions` work; others planned | -| **Memory Features** | ✅ Stable | Via `reasonkit-mem` crate | +| **Memory Features** | ✅ Stable | Via [`reasonkit-mem`](https://crates.io/crates/reasonkit-mem) crate | | **Python Bindings** | 🔶 Beta | Build from source with `--features python` | -**Current Version:** v0.1.2 | [CHANGELOG](CHANGELOG.md) | [Releases](https://github.com/reasonkit/reasonkit-core/releases) +**Current Version:** v0.1.5 | [CHANGELOG](CHANGELOG.md) | [Releases](https://github.com/reasonkit/reasonkit-core/releases) • [📦 Crates.io](https://crates.io/crates/reasonkit-core) • [📚 Docs.rs](https://docs.rs/reasonkit-core) ### Verify Installation @@ -506,6 +556,8 @@ rk serve-mcp --help OPENAI_API_KEY=your-key rk mcp ``` +**📖 Troubleshooting:** [Installation Issues](https://docs.reasonkit.sh/getting-started/installation#troubleshooting) • [Common Problems](https://docs.reasonkit.sh/troubleshooting) + --- ## License @@ -514,6 +566,8 @@ OPENAI_API_KEY=your-key rk mcp **Open Source Core:** All core reasoning protocols and ThinkTools are open source under Apache 2.0. +**📖 License Information:** [LICENSE](LICENSE) • [License Strategy](https://reasonkit.sh/about/license) + ---
@@ -524,6 +578,8 @@ OPENAI_API_KEY=your-key rk mcp _Designed, Not Dreamed_ -[Website](https://reasonkit.sh) | [Documentation](https://docs.reasonkit.sh) | [GitHub](https://github.com/reasonkit/reasonkit-core) +[Website](https://reasonkit.sh) | [Pro](https://reasonkit.sh/pro/) | [Docs](https://docs.reasonkit.sh) | [Resources](https://reasonkit.sh/resources/) | [Enterprise](https://reasonkit.sh/enterprise/) | [About](https://reasonkit.sh/about/) | [GitHub](https://github.com/reasonkit/reasonkit-core) + +**📦 Package Links:** [Crates.io](https://crates.io/crates/reasonkit-core) • [Docs.rs](https://docs.rs/reasonkit-core) • [PyPI](https://pypi.org/project/reasonkit/)
diff --git a/docs/guides/DEPLOYMENT.md b/docs/guides/DEPLOYMENT.md index 78b3a21..6bd8107 100644 --- a/docs/guides/DEPLOYMENT.md +++ b/docs/guides/DEPLOYMENT.md @@ -535,7 +535,7 @@ spec: imagePullPolicy: Always ports: - name: http - containerPort: 8080 + containerPort: 9100 protocol: TCP envFrom: - configMapRef: @@ -892,7 +892,7 @@ User=reasonkit Group=reasonkit WorkingDirectory=/opt/reasonkit EnvironmentFile=/opt/reasonkit/.env -ExecStart=/usr/local/bin/rk serve-mcp --port 8080 +ExecStart=/usr/local/bin/rk serve-mcp --port 9100 ExecReload=/bin/kill -HUP $MAINPID Restart=always RestartSec=5 @@ -1207,7 +1207,7 @@ gcloud run deploy reasonkit-core \ --cpu 2 \ --min-instances 1 \ --max-instances 10 \ - --port 8080 \ + --port 9100 \ --set-env-vars "RUST_LOG=info,REASONKIT_ENV=production" \ --set-secrets "ANTHROPIC_API_KEY=reasonkit-anthropic-key:latest" ``` diff --git a/docs/guides/INTEGRATION.md b/docs/guides/INTEGRATION.md index 56370b0..903accf 100644 --- a/docs/guides/INTEGRATION.md +++ b/docs/guides/INTEGRATION.md @@ -1023,9 +1023,9 @@ VOLUME /data ENV REASONKIT_DATA_DIR=/data ENV RUST_LOG=info -EXPOSE 8080 +EXPOSE 9100 -CMD ["rk", "serve", "--host", "0.0.0.0", "--port", "8080"] +CMD ["rk", "serve", "--host", "0.0.0.0", "--port", "9100"] ``` ```yaml @@ -1079,7 +1079,7 @@ spec: - name: reasonkit image: reasonkit/reasonkit-core:latest ports: - - containerPort: 8080 + - containerPort: 9100 env: - name: ANTHROPIC_API_KEY valueFrom: diff --git a/docs/reference/CLI_REFERENCE.md b/docs/reference/CLI_REFERENCE.md index 56cfa2c..ccc18d2 100644 --- a/docs/reference/CLI_REFERENCE.md +++ b/docs/reference/CLI_REFERENCE.md @@ -788,10 +788,10 @@ gunzip -c backup.jsonl.gz | rk import - rk serve # Production server (bind to all interfaces) -rk serve --host 0.0.0.0 --port 8080 +rk serve --host 0.0.0.0 --port 9100 # Behind nginx reverse proxy -rk serve --host 127.0.0.1 --port 8080 +rk serve --host 127.0.0.1 --port 9100 ``` --- diff --git a/pyproject.toml b/pyproject.toml index b049e19..9e3121c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -21,7 +21,7 @@ build-backend = "maturin" [project] name = "reasonkit" -version = "0.1.0" +version = "0.1.5" description = "ReasonKit - Turn Prompts into Protocols. Structured AI Reasoning with ThinkTools." readme = "README.md" license = { text = "Apache-2.0" } @@ -91,7 +91,7 @@ features = ["cli"] # Build in release mode by default profile = "release" # Target Python 3.9+ -python-source = false +# python-source = "python" # Uncomment if mixed Rust/Python project # Strip debug symbols for smaller wheels strip = true