---
title: Local development and debugging
description: Draft and test a gem in Gem Studio, then install it on your own machine.
section: dev
order: 70
updated: 2026-11-12
translation_of: zh
source_sha: c488328fcb88
---
# Local development and debugging
Gem Studio is the place inside Notochord where you develop gems: draft and test them there, then install them on your own machine.
## Drafts
- Create a new draft in Gem Studio, optionally starting from a template. A draft is a gem's folder: `manifest.json`, plus tools, agents, SOPs, pages, a skill, and the intro docs.
- You can edit files inside Gem Studio, or open the draft's folder in your own IDE and edit them there.
- Gem Studio has an assistant that can write code, check the paths in `SKILL.md`, and explain errors. If you have never written code, you can get through with its help.
- Drafts keep a history, so you can go back to an earlier version.
## Testing
- **Tools**: fill in the parameters on the tool's page and run it directly; you see the return value and a record of each step.
- **Agents**: chat with the agent in the test conversation; it runs along the same path as an installed one.
- **SOPs**: trigger one manually and see what each step did and what came out.
- **Pages**: a live preview inside Gem Studio.
- Tests use the same permissions and data as an installed gem: whatever the manifest didn't request isn't available in tests either. For how test data is kept and how to test migrations, see [Data and storage](/en/dev/storage.md).
## Installing on your own machine
Click "Install" and Notochord packages the draft and runs it through the same install flow, with the same checks, as a gem from the store. The package is unsigned and is treated as Developer mode (unsigned). See [Packaging and publishing](/en/dev/publishing.md) for details.
## Troubleshooting
- If installation fails, the error carries a code; look it up in the table in [Packaging and publishing](/en/dev/publishing.md).
- If a run fails, the gem's page has a run history; open an entry to see each step's input and result. In Gem Studio you can hand the error to the assistant to analyze.