Initialize SmartTools Registry structure
- Add README.md with usage instructions - Add CONTRIBUTING.md with publishing guidelines - Add categories/categories.yaml with 9 tool categories - Create tools/official/ directory for official namespace 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
commit
9a838f2407
|
|
@ -0,0 +1,115 @@
|
||||||
|
# Contributing to SmartTools Registry
|
||||||
|
|
||||||
|
Thank you for contributing to the SmartTools ecosystem!
|
||||||
|
|
||||||
|
## Publishing a Tool
|
||||||
|
|
||||||
|
### Prerequisites
|
||||||
|
|
||||||
|
1. Install SmartTools: `pip install smarttools`
|
||||||
|
2. Create an account at the registry website
|
||||||
|
3. Generate an API token from your dashboard
|
||||||
|
4. Configure your token: `smarttools config set-token YOUR_TOKEN`
|
||||||
|
|
||||||
|
### Tool Structure
|
||||||
|
|
||||||
|
Your tool directory should contain:
|
||||||
|
|
||||||
|
```
|
||||||
|
my-tool/
|
||||||
|
├── config.yaml # Required: Tool definition
|
||||||
|
└── README.md # Recommended: Documentation
|
||||||
|
```
|
||||||
|
|
||||||
|
### config.yaml Format
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
name: my-tool
|
||||||
|
version: "1.0.0"
|
||||||
|
description: A brief description of what your tool does
|
||||||
|
category: text-processing # See categories below
|
||||||
|
tags:
|
||||||
|
- ai
|
||||||
|
- productivity
|
||||||
|
|
||||||
|
arguments:
|
||||||
|
- flag: --max-length
|
||||||
|
variable: max_length
|
||||||
|
default: "500"
|
||||||
|
description: Maximum output length
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- type: prompt
|
||||||
|
prompt: |
|
||||||
|
Summarize the following text in {max_length} characters or less:
|
||||||
|
|
||||||
|
{input}
|
||||||
|
provider: claude
|
||||||
|
output_var: response
|
||||||
|
|
||||||
|
output: "{response}"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Categories
|
||||||
|
|
||||||
|
Choose one of these categories:
|
||||||
|
|
||||||
|
- `text-processing` - Text manipulation and analysis
|
||||||
|
- `code` - Code review, generation, analysis
|
||||||
|
- `data` - Data transformation and analysis
|
||||||
|
- `media` - Image, audio, video processing
|
||||||
|
- `productivity` - General productivity tools
|
||||||
|
- `writing` - Writing assistance and editing
|
||||||
|
- `translation` - Language translation
|
||||||
|
- `research` - Research and information gathering
|
||||||
|
|
||||||
|
### Publishing
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd my-tool/
|
||||||
|
smarttools registry publish
|
||||||
|
```
|
||||||
|
|
||||||
|
Use `--dry-run` to validate without publishing:
|
||||||
|
```bash
|
||||||
|
smarttools registry publish --dry-run
|
||||||
|
```
|
||||||
|
|
||||||
|
## Guidelines
|
||||||
|
|
||||||
|
### Do's
|
||||||
|
|
||||||
|
- Write clear, concise descriptions
|
||||||
|
- Include usage examples in your README
|
||||||
|
- Use semantic versioning (MAJOR.MINOR.PATCH)
|
||||||
|
- Test your tool before publishing
|
||||||
|
- Choose an appropriate category
|
||||||
|
|
||||||
|
### Don'ts
|
||||||
|
|
||||||
|
- Don't include secrets or API keys in prompts
|
||||||
|
- Don't publish tools that duplicate existing official tools
|
||||||
|
- Don't use misleading names or descriptions
|
||||||
|
- Don't publish empty or non-functional tools
|
||||||
|
|
||||||
|
## Versioning
|
||||||
|
|
||||||
|
Once a version is published, it cannot be modified. To make changes:
|
||||||
|
|
||||||
|
1. Update your tool locally
|
||||||
|
2. Bump the version in config.yaml
|
||||||
|
3. Run `smarttools registry publish`
|
||||||
|
|
||||||
|
## Deprecation
|
||||||
|
|
||||||
|
To deprecate a tool version, add to your config.yaml:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
deprecated: true
|
||||||
|
deprecated_message: "Use v2.0.0 instead - security fix"
|
||||||
|
replacement: "username/toolname@2.0.0"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Questions?
|
||||||
|
|
||||||
|
Open an issue on the [SmartTools repository](https://gitea.brrd.tech/rob/SmartTools/issues).
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
# SmartTools Registry
|
||||||
|
|
||||||
|
The official registry of tools for [SmartTools](https://gitea.brrd.tech/rob/SmartTools) - a lightweight personal tool builder for AI-powered CLI commands.
|
||||||
|
|
||||||
|
## Browse Tools
|
||||||
|
|
||||||
|
Visit the web UI: https://registry.smarttools.dev (or your self-hosted instance)
|
||||||
|
|
||||||
|
Or use the CLI:
|
||||||
|
```bash
|
||||||
|
smarttools registry browse
|
||||||
|
smarttools registry search <query>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Install a Tool
|
||||||
|
|
||||||
|
```bash
|
||||||
|
smarttools registry install official/summarize
|
||||||
|
```
|
||||||
|
|
||||||
|
## Publish Your Own Tool
|
||||||
|
|
||||||
|
1. Create an account at the registry website
|
||||||
|
2. Generate an API token from your dashboard
|
||||||
|
3. Run `smarttools registry publish` in your tool directory
|
||||||
|
|
||||||
|
See [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines.
|
||||||
|
|
||||||
|
## Repository Structure
|
||||||
|
|
||||||
|
```
|
||||||
|
SmartTools-Registry/
|
||||||
|
├── tools/ # All published tools
|
||||||
|
│ ├── official/ # Official namespace
|
||||||
|
│ │ ├── summarize/
|
||||||
|
│ │ │ ├── config.yaml
|
||||||
|
│ │ │ └── README.md
|
||||||
|
│ │ └── translate/
|
||||||
|
│ │ ├── config.yaml
|
||||||
|
│ │ └── README.md
|
||||||
|
│ └── {username}/ # User namespaces
|
||||||
|
│ └── {toolname}/
|
||||||
|
│ ├── config.yaml
|
||||||
|
│ └── README.md
|
||||||
|
├── categories/
|
||||||
|
│ └── categories.yaml # Category definitions
|
||||||
|
└── index.json # Auto-generated search index
|
||||||
|
```
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
Tools in this registry are published under their individual licenses as specified in each tool's config.yaml or README.md.
|
||||||
|
|
@ -0,0 +1,94 @@
|
||||||
|
categories:
|
||||||
|
- name: text-processing
|
||||||
|
description: Tools for manipulating and analyzing text
|
||||||
|
icon: "📝"
|
||||||
|
keywords:
|
||||||
|
- text
|
||||||
|
- string
|
||||||
|
- parse
|
||||||
|
- format
|
||||||
|
- clean
|
||||||
|
- extract
|
||||||
|
|
||||||
|
- name: code
|
||||||
|
description: Tools for code review, generation, and analysis
|
||||||
|
icon: "💻"
|
||||||
|
keywords:
|
||||||
|
- code
|
||||||
|
- programming
|
||||||
|
- debug
|
||||||
|
- review
|
||||||
|
- refactor
|
||||||
|
- lint
|
||||||
|
|
||||||
|
- name: data
|
||||||
|
description: Tools for data transformation and analysis
|
||||||
|
icon: "📊"
|
||||||
|
keywords:
|
||||||
|
- data
|
||||||
|
- json
|
||||||
|
- csv
|
||||||
|
- transform
|
||||||
|
- convert
|
||||||
|
- analyze
|
||||||
|
|
||||||
|
- name: media
|
||||||
|
description: Tools for image, audio, and video processing
|
||||||
|
icon: "🎨"
|
||||||
|
keywords:
|
||||||
|
- image
|
||||||
|
- audio
|
||||||
|
- video
|
||||||
|
- media
|
||||||
|
- picture
|
||||||
|
- sound
|
||||||
|
|
||||||
|
- name: productivity
|
||||||
|
description: General productivity and automation tools
|
||||||
|
icon: "⚡"
|
||||||
|
keywords:
|
||||||
|
- productivity
|
||||||
|
- automate
|
||||||
|
- workflow
|
||||||
|
- task
|
||||||
|
- organize
|
||||||
|
|
||||||
|
- name: writing
|
||||||
|
description: Writing assistance and editing tools
|
||||||
|
icon: "✍️"
|
||||||
|
keywords:
|
||||||
|
- write
|
||||||
|
- edit
|
||||||
|
- grammar
|
||||||
|
- spelling
|
||||||
|
- proofread
|
||||||
|
- draft
|
||||||
|
|
||||||
|
- name: translation
|
||||||
|
description: Language translation tools
|
||||||
|
icon: "🌍"
|
||||||
|
keywords:
|
||||||
|
- translate
|
||||||
|
- language
|
||||||
|
- localize
|
||||||
|
- i18n
|
||||||
|
|
||||||
|
- name: research
|
||||||
|
description: Research and information gathering tools
|
||||||
|
icon: "🔍"
|
||||||
|
keywords:
|
||||||
|
- research
|
||||||
|
- search
|
||||||
|
- find
|
||||||
|
- lookup
|
||||||
|
- information
|
||||||
|
|
||||||
|
- name: summarization
|
||||||
|
description: Tools for summarizing content
|
||||||
|
icon: "📋"
|
||||||
|
keywords:
|
||||||
|
- summarize
|
||||||
|
- summary
|
||||||
|
- tldr
|
||||||
|
- brief
|
||||||
|
- condense
|
||||||
Loading…
Reference in New Issue