toolhive-studio
AGENTS.md173 starsChanged 5 months agoApache-2.0View on GitHub
This file provides guidance to AI coding assistants working with this repository. ToolHive Studio is an Electron desktop application for managing MCP (Model Context Protocol) servers. Built with React, TypeScript, Electron, and Vite. Uses pnpm as package manager. Requires Node.js >=24 <25. Husky/lint-staged automatically run lint + format on staged files. Run pnpm run type-check manually before committing. Do not modify or manually edit:
- Installs packages
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,542 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository20 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- .github/copilot-instructions.mdCopilot instructions
- bug-fix-tddSkill
- deep-linksSkill
- devcontainer-devSkill
- security-vuln-remediationSkill
- skill-creatorSkill
- skill-editorSkill
- testing-api-assertionsSkill
- testing-api-overridesSkill
- testing-with-api-mocksSkill
- bug-fix-tddSkill
- deep-linksSkill
- devcontainer-devSkill
- security-vuln-remediationSkill
- skill-creatorSkill
- skill-editorSkill
- testing-api-assertionsSkill
- testing-api-overridesSkill
- testing-with-api-mocksSkill
The file
We split this AGENTS.md into the rules it gives an agent
7 rules. About 0 are common, 4 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 28
If API type errors appear, run pnpm run generate-client to refresh
- Distinctive: line 30
Always run commands from the repository root, not from subdirectories
- Distinctive: line 34
Do not modify or manually edit:
- Distinctive: line 45
Imports: use aliases for cross-directory imports, not relative paths
- Very specific: line 53
Use .override() / .overrideHandler() for test-specific API responses
- Very specific: line 54
Use recordRequests() to assert on outgoing API calls
- Distinctive: line 60
Keep PRs small and focused
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
This file provides guidance to AI coding assistants working with this repository.
Project Overview
ToolHive Studio is an Electron desktop application for managing MCP (Model Context Protocol) servers. Built with React, TypeScript, Electron, and Vite. Uses pnpm as package manager. Requires Node.js >=24 <25.
Essential Commands
pnpm install # Install dependencies
pnpm run start # Start dev server with hot reload
pnpm run lint # Run ESLint
pnpm run type-check # TypeScript type checking
pnpm run format # Format with Prettier
pnpm run test:nonInteractive # Run unit tests once
pnpm run test:coverage # Unit tests with coverage
pnpm run e2e # End-to-end tests
pnpm run generate-client # Regenerate API client from OpenAPI spec
pnpm run knip # Detect unused codeHusky/lint-staged automatically run lint + format on staged files. Run pnpm run type-check manually before committing.
Common Gotchas
- Docker daemon must be running before
pnpm run start - Node.js version must be >=24 <25 — some native modules break on wrong Node version
- If API type errors appear, run
pnpm run generate-clientto refresh - Tests run through Electron (
pnpm run vitest:electron), not plain Node - Always run commands from the repository root, not from subdirectories
Boundaries
Do not modify or manually edit:
common/api/generated/*— regenerate viapnpm run generate-clientrenderer/src/route-tree.gen.ts— auto-generated by TanStack Router pluginnode_modules/,out/,.vite/— build artifacts
Code Conventions
- File names: kebab-case always (e.g.,
card-mcp-server.tsx) - Components: PascalCase, functional with hooks
- Path aliases:
@/*(renderer/src),@common/*,@utils/*,@mocks/* - Imports: use aliases for cross-directory imports, not relative paths
- Exports: named exports preferred over default exports
Testing Patterns
- Tests in
__tests__/directories colocated with source - API mocking via auto-generated MSW fixtures from OpenAPI spec
- See
docs/mocks.mdfor mocking patterns - Use
.override()/.overrideHandler()for test-specific API responses - Use
recordRequests()to assert on outgoing API calls
Commit and PR Guidelines
- Conventional Commits format required
- PR titles validated against conventional commit spec by CI
- Keep PRs small and focused
- See
CONTRIBUTING.mdfor details
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

