Skip to content

feat: add autoresearch demo — Slurm MCP for Hermes agent#16

Open
Marcelo5444 wants to merge 2 commits into
brevdev:mainfrom
Marcelo5444:add-autoresearch-demo
Open

feat: add autoresearch demo — Slurm MCP for Hermes agent#16
Marcelo5444 wants to merge 2 commits into
brevdev:mainfrom
Marcelo5444:add-autoresearch-demo

Conversation

@Marcelo5444
Copy link
Copy Markdown

Summary

  • Connects a remote Slurm cluster to a Hermes agent inside a NemoClaw sandbox via slurm-mcp
  • Same MCP-over-HTTP pattern as the blender-demo (mcp-proxy + mcporter through L7 proxy)
  • SSH key never enters the sandbox — stays on host where mcp-proxy runs
  • Agent follows Karpathy's autoresearch loop: modify → run → evaluate → keep/discard → repeat
  • One-command setup via ./setup.sh
  • Requires --agent hermes during nemoclaw onboard

What's included

File Purpose
autoresearch-hermes-guide.md Full walkthrough (same format as blender guide)
bootstrap.sh Starts mcp-proxy + slurm-mcp on host, installs mcporter + policy + skill in sandbox
setup.sh Top-level installer: MCP bridge + agent persona + upstream research/mlops skills
autoresearch-skill/SOUL.md Autoresearch loop + mandatory Slurm safety checks (must ask partition/quota before jobs)
autoresearch-skill/SKILL.md Teaches the agent how to call mcporter as a bash command
policy.yaml Reference network policy

Test plan

  • nemoclaw onboard --agent hermes creates a Hermes sandbox
  • ./setup.sh --sandbox <name> --alias cluster=<login-node> --key ~/.ssh/id_ed25519 --user <user> completes
  • openshell sandbox exec -n <name> -- /sandbox/bin/mcporter call cluster.run_shell_command command="hostname" returns the remote hostname
  • Agent in Hermes chat can run commands on cluster via mcporter
  • SOUL.md instructs agent to ask for Slurm partition/quota before submitting jobs

🤖 Generated with Claude Code

Marcelo5444 and others added 2 commits April 14, 2026 12:28
Adds a demo that connects a remote Slurm cluster to a Hermes agent
inside a NemoClaw sandbox via slurm-mcp (MCP over SSH). The agent
can submit jobs, monitor GPUs, manage files, and run shell commands
on the cluster — all through 34 MCP tools.

Key design:
- Same MCP-over-HTTP pattern as the blender-demo (mcp-proxy + mcporter)
- SSH key never enters the sandbox — stays on host
- Agent persona follows Karpathy's autoresearch loop
- Pulls research + mlops skills from NousResearch/hermes-agent upstream
- setup.sh automates the entire installation in one command
- Requires --agent hermes during nemoclaw onboard

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…/.bashrc

- Resolve host.openshell.internal to IPv4 explicitly. `getent hosts` may return
  an IPv6 address first on some images; the resulting bracket-less URL
  (http://fdc4:...:9878/sse) is malformed, and the L7 proxy/SSRF guard rejects
  bracket-less IPv6 anyway. Use `getent ahosts ... | awk '/STREAM/ && \$1 !~ /:/'`.

- /sandbox/.bashrc is root-owned read-only on current sandbox images, so
  `echo >> /sandbox/.bashrc` aborts the bootstrap under set -e before the
  SKILL.md upload and verify steps run. Make the PATH-export non-fatal — the
  skill uses absolute paths anyway.

Also enrich the generated ssh-remote SKILL.md with two patterns from real use:
- Interactive sessions (start_interactive_session / exec_in_session) preferred
  over submit_job for iterative work
- NGC container registry login (docker login nvcr.io) with API-key prompt

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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