Goose extension for Neruva agent memory + reasoning substrate. Wires Neruva's three auto-pilot layers (route intent / reflect / extract) into Goose's pre-message and post-tool events. Pattern-C: substrate emits the prompt, your LLM runs it, results pushed back. Substrate stays $0/call. Pairs with the @neruva/mcp Goose MCP extension for full tool surface.
Project description
neruva-goose
Goose (Block Inc) extension for the Neruva agent memory + reasoning substrate.
Two integration paths -- use one or both:
Path 1: @neruva/mcp as a Goose MCP extension (zero Python)
Drop the Neruva MCP server straight into Goose's extension config. You get every Neruva substrate tool (records, KG, causal, analogy, CBR, ToM, EFE planning, code graph, replay) inside Goose with no glue code.
~/.config/goose/config.yaml:
extensions:
neruva:
type: stdio
cmd: npx
args: ["-y", "@neruva/mcp@latest"]
env:
NERUVA_API_KEY: nv_your_key_here
Restart Goose. Run goose mcp list -- you should see ~80 Neruva tools.
Path 2: neruva-goose Python package (auto-pilot)
For pattern-C auto-pilot (route intent / reflect / extract running through your LLM, with substrate emitting only the prompts), install this Python package and wire its hooks into your Goose extension.
pip install neruva-goose
from neruva_goose import NeruvaAutoPilot, NeruvaAutoPilotHooks
ap = NeruvaAutoPilot(
api_key="nv_...",
namespace="my_session",
llm_callable=lambda prompt: my_llm.complete(prompt),
)
hooks = NeruvaAutoPilotHooks(ap, reflect_every=10)
# Pre-message: classify intent so you can pick the right Neruva tool
intent = hooks.before_user_message(user_text)
print(intent)
# -> {"primary_intent": "counterfactual", "confidence": 0.87,
# "suggested_tool": "agent_counterfactual_rollout", ...}
# Post-tool: auto-extract facts to the auto-KG, fire reflection every 10
hooks.after_tool_call("agent_recall", str(tool_output))
# Optional: buffer assistant turns
hooks.after_assistant_message(assistant_text)
# End of session: force a final reflection
hooks.after_session(force=True)
The three layers:
| Layer | Hook | Substrate prompt | What happens |
|---|---|---|---|
| 1 | after_tool_call |
inline extraction prompt | Triples extracted from tool output, pushed to <ns>-auto-kg. |
| 2 | before_user_message |
/v1/agent/route_intent_prompt |
Returns top intent + suggested Neruva tool. |
| 3 | after_session / every N tool calls |
/v1/agent/reflect_prompt |
Decisions / facts / mistakes / open_questions written to substrate. |
Pattern-C, $0/call
The substrate never runs your LLM. It hands back canonical prompts; your code runs them; structured results come back via the existing client. That keeps the substrate deterministic and free at the call boundary, and means your LLM provider, model choice, and rate limits are entirely yours.
License
MIT. Same as neruva-mcp, neruva-record, neruva-langchain,
neruva-langgraph, neruva-crewai.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file neruva_goose-0.1.0.tar.gz.
File metadata
- Download URL: neruva_goose-0.1.0.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
df4b1067c2877145bb9903bd019b4fd5be95428b26cbe3aaa5cd036c3f29650b
|
|
| MD5 |
50f1de9dcdd56bbe4848ae8453508b29
|
|
| BLAKE2b-256 |
8b5d47381d4911bcba0ac3a91f50185d075a122eee7279221b9748c5b39a19b7
|
File details
Details for the file neruva_goose-0.1.0-py3-none-any.whl.
File metadata
- Download URL: neruva_goose-0.1.0-py3-none-any.whl
- Upload date:
- Size: 8.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
60ac3d0b6b4da171e566f923f4d1bc10cf7f065269505cf6b5a34e72235ba911
|
|
| MD5 |
adbf784140673697084ee3d9bd53dfdb
|
|
| BLAKE2b-256 |
cda65af959a9b7ee690a84c7af21459c574cbec89d9ad05ab32dc9cd9e064abb
|