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.
Metadata
Release files for neruva-goose 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| neruva_goose-0.1.0.tar.gz | 10.3 kB | Without provenance | Details for neruva_goose-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| neruva_goose-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for neruva_goose-0.1.0-py3-none-any.whl |
Total release size: 18.7 kB
Release files / neruva_goose-0.1.0.tar.gz
| Download URL | neruva_goose-0.1.0.tar.gz |
|---|---|
| Size | 10.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
df4b1067c2877145bb9903bd019b4fd5be95428b26cbe3aaa5cd036c3f29650b
|
|
BLAKE2b-256 checksum How to use checksums |
8b5d47381d4911bcba0ac3a91f50185d075a122eee7279221b9748c5b39a19b7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Release files / neruva_goose-0.1.0-py3-none-any.whl
| Download URL | neruva_goose-0.1.0-py3-none-any.whl |
|---|---|
| Size | 8.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
60ac3d0b6b4da171e566f923f4d1bc10cf7f065269505cf6b5a34e72235ba911
|
|
BLAKE2b-256 checksum How to use checksums |
cda65af959a9b7ee690a84c7af21459c574cbec89d9ad05ab32dc9cd9e064abb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.9
|
Security for neruva-goose 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.