Files
drug-discovery-prompts/upstream/mims-harvard-ToolUniverse/skills/devtu-code-optimization/SKILL.md

3.2 KiB

lineage_type, upstream_source, upstream_sha, imported_at, prompt_class, upstream_changes, name, description
lineage_type upstream_source upstream_sha imported_at prompt_class upstream_changes name description
import https://github.com/mims-harvard/ToolUniverse/blob/3038dcbe/skills/devtu-code-optimization/SKILL.md 3038dcbe 2026-06-30 prompt accepted devtu-code-optimization Code quality patterns and guidelines for ToolUniverse tool development. Apply when writing, fixing, or refactoring tool Python code in the ToolUniverse project. Encodes lessons from 80+ debug rounds. Use alongside devtu-fix-tool and devtu-self-evolve. Triggers: implementing tool fixes, writing new tool classes, reviewing tool code quality, checking schema correctness, looking up API-specific bug fixes.

ToolUniverse Code Optimization

Always run Skill(skill="simplify") after writing or modifying code.

Pre-Commit Checklist

  • return_schema has oneOf: [{data+metadata}, {error}]
  • Test examples use real IDs (no DUMMY/PLACEHOLDER)
  • try: has except: at exact same indentation level
  • No trailing commas in JSON (python3 -c "import json; json.load(open('f.json'))")
  • New tool class registered in _lazy_registry_static.py and default_config.py
  • ruff check src/tooluniverse/<file>.py passes
  • python -c "from tooluniverse.<module> import <Class>" passes
  • python -m tooluniverse.cli run <Tool> '<real_args_json>' returns expected data
  • Ran Skill(skill="simplify") on all modified files

Key Fix Categories

Category Signal Reference
Silent param ignored API accepts but drops filter code-patterns.md — Client-Side Filter
Wrong API field/endpoint 0 results or 404 api-fixes.md — Quick Lookup Table
Schema invalid null type, missing oneOf code-patterns.md — Schema Patterns
Undisclosed normalization Auto-transform hidden from user code-patterns.md — Normalization Disclosure
try/except indent SyntaxError at runtime code-patterns.md — try/except section
Truncation buried Data count hidden in notes code-patterns.md — Truncation
Hosted model API (NIM) async 404 on poll, JSON-wrapped output, 200+inner-failure, "not found for account" code-patterns.md — Hosted Model-API Tools
R subprocess tool '\.' unrecognized escape from Rscript -e code-patterns.md — R-subprocess Tools

References

Git & PR Workflow

git fetch origin && git stash && git rebase origin/main && git stash pop
git push --force-with-lease origin fix/round-XX-bugs
gh pr view <N> --json mergeable  # must be MERGEABLE before done
  • Never push to main directly
  • Never have multiple open fix PRs
  • Commit messages: "Feature" or "Fix" — never "Bug"
  • No AI attribution in commits
  • Repo: mims-harvard/ToolUniverse — verify with git remote -v