feat(skills): add autonomous research and tinker GPU training capabilities#760
feat(skills): add autonomous research and tinker GPU training capabilities#760ar0cket1 wants to merge 1 commit into
Conversation
…ities
Add two new skills to enable fully autonomous ML research workflows:
1. Tinker skill (mlops/tinker):
- API-based GPU training for CPU-only agents
- LoRA fine-tuning, RL, DPO, RLHF support
- Self-chaining session pattern for long training runs
- Checkpoint-based resumption and monitoring
2. Autonomous Researcher skill (research/autonomous-researcher):
- End-to-end research pipeline orchestration
- 8-phase workflow: literature review -> ideation -> implementation
-> training -> evaluation -> iteration -> writing -> publishing
- Multiple input modes (full autonomous, user hypothesis, user data, etc.)
- Routes to specialized skills for each phase
Together these skills close the "compute gap" for Hermes Agent, enabling
autonomous training and research without local GPU access. The Tinker API
allows the agent to control training loops while offloading GPU compute
to remote infrastructure.
The autonomous researcher skill provides a complete research automation
framework, combining literature review (arxiv), implementation (codex/claude-code),
training (tinker), evaluation (lm-eval-harness), and publication (HF Hub, GitHub).
|
Thanks for contributing these! Putting into draft for now — we'll review properly after the hackathon wraps up. A few things we'll want to address before merging:
Will circle back after the hackathon! |
|
Orb Code Review (GLM 5.1 on Orb Cloud) PR #760 Review: feat(skills): add autonomous research and tinker GPU training capabilitiesReviewed both new SKILL.md files: 🐛 Bugs1. Wrong module reference in Supervised Learning example (tinker SKILL.md) trainer.optim_step(types.AdamParams(learning_rate=1e-4)).result()
2. Undefined 3. Missing Mode D example invocation 🔒 Security4. Shell injection in self-chaining pattern f"hermes chat -q 'Continue training with checkpoint {decision["checkpoint_path"]}'"The 5. 📋 Content / Quality6. Trailing HERMES_EOF artifacts in both files This appears to be a session fence marker that was accidentally included in the file content. It should be removed, and both files should end with a proper newline. 7. Massive duplication between the two files 8. SummaryThe overall structure and concept of both skills is solid — the 8-phase research pipeline and self-chaining session pattern are well-designed. However, the code examples contain bugs that would confuse users, there's a security concern with shell interpolation, and the trailing HERMES_EOF artifacts need to be cleaned up before merging. The duplication between files is the largest maintenance concern. Recommendation: Request changes — address the HERMES_EOF artifacts, the |
Charon Code Review — PR #760Two new skills: Tinker (GPU fine-tuning via Thinking Machines Lab API) and Autonomous Researcher (end-to-end ML research pipeline). Both are SKILL.md files — primarily documentation/instructional content. Structural review below. 🔴 Critical —
|
ether-btc
left a comment
There was a problem hiding this comment.
Hermes Agent Code Review — PR #760
Verdict: Request Changes
Two new skill files. One functional issue and one correctness issue.
🔴 Critical — Non-Existent Skill Reference in autonomous-researcher
File: skills/research/autonomous-researcher/SKILL.md
The skill references a non-existent skill tinker in the workflow routing:
Routes to specialized skills for each phase.
The skill describes routing to tinker for the training phase:
| Training | Execute | Orchestrates training... | Routes to specialized skills for each phase |
And in the workflow table:
| Training | Execute | Orchestrates training via tinker API... | → `tinker` skill |
But the tinker skill lives at skills/mlops/tinker/SKILL.md in the same PR. At skill discovery time, autonomous-researcher loads and scans for skill references before tinker is registered. The skill routing system will fail to find tinker if it references it by name.
More importantly — tinker is not a standard Hermes skill name in the skills_list output. Skills are referenced by their directory name, not their metadata name. The skill at skills/mlops/tinker/ would be referenced as mlops/tinker, not tinker.
Suggested fix:
- Use the correct fully-qualified skill path
mlops/tinkerwhen routing to the training phase - Or add a
related_skillsorroutes_tometadata field to make the routing explicit and checkable
🔴 Critical — Python Syntax Error in Tinker Skill Code Example
File: skills/mlops/tinker/SKILL.md:132
trainer.optim_step(types.AdamParams(learning_rate=1e-4)).result()The module imports types as:
from tinker import typesBut tinker does not have an AdamParams attribute in its public API. The correct API is tinker.AdamParams (passed directly to optim_step), not types.AdamParams. This will raise AttributeError: module 'tinker' has no attribute 'AdamParams' at runtime.
The same issue appears in the self-chaining example at line 242:
trainer.optim_step(tinker.AdamParams(learning_rate=args.lr)).result()Should be:
trainer.optim_step(tinker.AdamParams(learning_rate=args.lr)).result()Wait — that is exactly what it says. So the issue is from tinker import types is imported but types is never actually used with AdamParams. The example at line 132 uses types.AdamParams(...) but types was never defined.
Suggested fix: Either remove the from tinker import types line and use tinker.AdamParams, or define types correctly.
💡 Suggestion — Hermetic Code Examples
Both skill files use import tinker and from tinker import types in code examples that would be executed in a Hermes session. If tinker is not installed (likely, since it's an external service), these examples will immediately fail with ModuleNotFoundError. Consider wrapping them in a check:
try:
import tinker
except ImportError:
tinker = None # External API — install requiredReviewed by Hermes Agent
Summary
Add two new skills to enable fully autonomous ML research workflows:
1. Tinker Skill (
mlops/tinker)2. Autonomous Researcher Skill (
research/autonomous-researcher)Motivation
These skills close the "compute gap" for Hermes Agent, enabling autonomous training and research without local GPU access. The Tinker API allows the agent to control training loops while offloading GPU compute to remote infrastructure.
The autonomous researcher skill provides a complete research automation framework, combining:
Test Plan
skills_list()skill_view()Files Changed
skills/mlops/tinker/SKILL.md- New Tinker training skillskills/research/autonomous-researcher/SKILL.md- New autonomous research skill