Rename project from SmartTools to CmdForge
Major rename operation: - Rename Python package: smarttools -> cmdforge - Update CLI entry point: smarttools -> cmdforge - Update all imports and module references - Update pyproject.toml with new name, URLs, entry point - Update all HTML templates with new branding - Update documentation (CLAUDE.md, README.md, docs/*, wiki/*) - Update environment variables: - SMARTTOOLS_ENV -> CMDFORGE_ENV - SMARTTOOLS_REGISTRY_DB -> CMDFORGE_REGISTRY_DB - SMARTTOOLS_TOKEN -> CMDFORGE_TOKEN - SMARTTOOLS_REGISTRY_* -> CMDFORGE_REGISTRY_* - Update Dockerfile and docker-compose.yml - Update tests to use new package name - Update scripts and examples - Update package.json and tailwind.config.js All 158 unit tests pass. The CLI is working correctly with the new cmdforge command. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <[email protected]>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# SmartTools
|
||||
# CmdForge
|
||||
|
||||
**A lightweight personal tool builder for AI-powered CLI commands.**
|
||||
|
||||
@@ -20,7 +20,7 @@ echo "Price $49.99, SKU ABC-123" | json-extract --fields "price, sku"
|
||||
# Output: {"price": 49.99, "sku": "ABC-123"}
|
||||
```
|
||||
|
||||
## Why SmartTools?
|
||||
## Why CmdForge?
|
||||
|
||||
- **Unix Philosophy** - Tools that do one thing well, composable with pipes
|
||||
- **Provider Agnostic** - Works with Claude, GPT, Gemini, DeepSeek, local models
|
||||
@@ -30,17 +30,17 @@ echo "Price $49.99, SKU ABC-123" | json-extract --fields "price, sku"
|
||||
|
||||
## Try It Now (60 seconds)
|
||||
|
||||
See SmartTools in action without installing anything on your system:
|
||||
See CmdForge in action without installing anything on your system:
|
||||
|
||||
```bash
|
||||
# Pull the container
|
||||
docker pull gitea.brrd.tech/rob/smarttools:latest
|
||||
docker pull gitea.brrd.tech/rob/cmdforge:latest
|
||||
|
||||
# Run it
|
||||
docker run -it --rm gitea.brrd.tech/rob/smarttools bash
|
||||
docker run -it --rm gitea.brrd.tech/rob/cmdforge bash
|
||||
|
||||
# Inside the container - install OpenCode (includes free AI models)
|
||||
smarttools providers install # Select option 4, then 'y'
|
||||
cmdforge providers install # Select option 4, then 'y'
|
||||
source ~/.bashrc
|
||||
|
||||
# Try it! This explains the README using the free Big Pickle model
|
||||
@@ -55,21 +55,21 @@ For regular use, install natively:
|
||||
|
||||
```bash
|
||||
# Clone and install
|
||||
git clone https://gitea.brrd.tech/rob/SmartTools.git
|
||||
cd SmartTools
|
||||
git clone https://gitea.brrd.tech/rob/CmdForge.git
|
||||
cd CmdForge
|
||||
pip install -e .
|
||||
|
||||
# Ensure ~/.local/bin is in PATH
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
|
||||
# Install an AI provider (interactive guide)
|
||||
smarttools providers install
|
||||
cmdforge providers install
|
||||
|
||||
# Launch the UI
|
||||
smarttools ui
|
||||
cmdforge ui
|
||||
|
||||
# Or create your first tool
|
||||
smarttools create summarize
|
||||
cmdforge create summarize
|
||||
```
|
||||
|
||||
## Installation
|
||||
@@ -77,16 +77,16 @@ smarttools create summarize
|
||||
### Native Install
|
||||
|
||||
```bash
|
||||
git clone https://gitea.brrd.tech/rob/SmartTools.git
|
||||
cd SmartTools
|
||||
git clone https://gitea.brrd.tech/rob/CmdForge.git
|
||||
cd CmdForge
|
||||
pip install -e .
|
||||
```
|
||||
|
||||
### With Development Dependencies
|
||||
|
||||
```bash
|
||||
git clone https://gitea.brrd.tech/rob/SmartTools.git
|
||||
cd SmartTools
|
||||
git clone https://gitea.brrd.tech/rob/CmdForge.git
|
||||
cd CmdForge
|
||||
pip install -e ".[dev]"
|
||||
```
|
||||
|
||||
@@ -107,7 +107,7 @@ export PATH="$HOME/.local/bin:$PATH"
|
||||
Then refresh wrapper scripts:
|
||||
|
||||
```bash
|
||||
smarttools refresh
|
||||
cmdforge refresh
|
||||
```
|
||||
|
||||
## Usage
|
||||
@@ -115,7 +115,7 @@ smarttools refresh
|
||||
### UI Mode (Recommended for Beginners)
|
||||
|
||||
```bash
|
||||
smarttools ui
|
||||
cmdforge ui
|
||||
```
|
||||
|
||||
Navigate with arrow keys, Tab, Enter, and mouse. Create tools visually with the built-in prompt editor.
|
||||
@@ -123,13 +123,13 @@ Navigate with arrow keys, Tab, Enter, and mouse. Create tools visually with the
|
||||
### CLI Mode
|
||||
|
||||
```bash
|
||||
smarttools list # List all tools
|
||||
smarttools create mytool # Create new tool
|
||||
smarttools edit mytool # Edit in $EDITOR
|
||||
smarttools delete mytool # Delete tool
|
||||
smarttools run mytool # Run a tool
|
||||
smarttools test mytool # Test with mock provider
|
||||
smarttools refresh # Update executable wrappers
|
||||
cmdforge list # List all tools
|
||||
cmdforge create mytool # Create new tool
|
||||
cmdforge edit mytool # Edit in $EDITOR
|
||||
cmdforge delete mytool # Delete tool
|
||||
cmdforge run mytool # Run a tool
|
||||
cmdforge test mytool # Test with mock provider
|
||||
cmdforge refresh # Update executable wrappers
|
||||
```
|
||||
|
||||
### Running Tools
|
||||
@@ -155,10 +155,10 @@ cat file.txt | mytool --provider mock
|
||||
|
||||
### Composing Tools
|
||||
|
||||
SmartTools follows Unix philosophy: each tool does one thing well, and tools chain together for complex workflows.
|
||||
CmdForge follows Unix philosophy: each tool does one thing well, and tools chain together for complex workflows.
|
||||
|
||||
```bash
|
||||
# Chain SmartTools together
|
||||
# Chain CmdForge together
|
||||
cat error.log | log-errors | summarize | translate --lang Spanish
|
||||
|
||||
# Code review pipeline: focus on changes, review, then summarize
|
||||
@@ -208,7 +208,7 @@ translate-doc() {
|
||||
|
||||
## Example Tools
|
||||
|
||||
SmartTools comes with 28 pre-built examples you can install:
|
||||
CmdForge comes with 28 pre-built examples you can install:
|
||||
|
||||
### Text Processing
|
||||
|
||||
@@ -259,14 +259,14 @@ SmartTools comes with 28 pre-built examples you can install:
|
||||
### Install Example Tools
|
||||
|
||||
```bash
|
||||
# Run the example installer (from the SmartTools directory)
|
||||
# Run the example installer (from the CmdForge directory)
|
||||
python examples/install.py
|
||||
smarttools refresh
|
||||
cmdforge refresh
|
||||
```
|
||||
|
||||
## Providers
|
||||
|
||||
SmartTools works with any AI CLI tool. We've profiled 12 providers:
|
||||
CmdForge works with any AI CLI tool. We've profiled 12 providers:
|
||||
|
||||
| Provider | Speed | Accuracy | Cost | Best For |
|
||||
|----------|-------|----------|------|----------|
|
||||
@@ -281,7 +281,7 @@ See [docs/PROVIDERS.md](docs/PROVIDERS.md) for setup instructions.
|
||||
|
||||
## Tool Anatomy
|
||||
|
||||
A tool is a YAML config file in `~/.smarttools/<name>/config.yaml`:
|
||||
A tool is a YAML config file in `~/.cmdforge/<name>/config.yaml`:
|
||||
|
||||
```yaml
|
||||
name: summarize
|
||||
@@ -429,7 +429,7 @@ This lets you generate or modify Python code using AI directly within the tool b
|
||||
|
||||
## Philosophy
|
||||
|
||||
SmartTools is built on **Unix philosophy**:
|
||||
CmdForge is built on **Unix philosophy**:
|
||||
|
||||
1. **Do one thing well** - Each tool solves one problem. `summarize` summarizes. `translate` translates. No bloated mega-tools.
|
||||
|
||||
@@ -444,15 +444,15 @@ SmartTools is built on **Unix philosophy**:
|
||||
## Contributing
|
||||
|
||||
```bash
|
||||
git clone https://gitea.brrd.tech/rob/smarttools.git
|
||||
cd smarttools
|
||||
git clone https://gitea.brrd.tech/rob/cmdforge.git
|
||||
cd cmdforge
|
||||
pip install -e ".[dev]"
|
||||
pytest
|
||||
```
|
||||
|
||||
## Support
|
||||
|
||||
If SmartTools saves you time, consider supporting the project:
|
||||
If CmdForge saves you time, consider supporting the project:
|
||||
|
||||
**Bitcoin:** `3KeLqGv2Xo8jGYkqA1i68a6nXwgQnuJoza`
|
||||
|
||||
@@ -470,16 +470,16 @@ Pull and run the pre-built image directly:
|
||||
|
||||
```bash
|
||||
# Pull from registry
|
||||
docker pull gitea.brrd.tech/rob/smarttools:latest
|
||||
docker pull gitea.brrd.tech/rob/cmdforge:latest
|
||||
|
||||
# Run SmartTools
|
||||
docker run -it --rm gitea.brrd.tech/rob/smarttools smarttools --help
|
||||
# Run CmdForge
|
||||
docker run -it --rm gitea.brrd.tech/rob/cmdforge cmdforge --help
|
||||
|
||||
# List available tools
|
||||
docker run -it --rm gitea.brrd.tech/rob/smarttools smarttools list
|
||||
docker run -it --rm gitea.brrd.tech/rob/cmdforge cmdforge list
|
||||
|
||||
# Interactive shell
|
||||
docker run -it --rm gitea.brrd.tech/rob/smarttools bash
|
||||
docker run -it --rm gitea.brrd.tech/rob/cmdforge bash
|
||||
```
|
||||
|
||||
### Build from Source
|
||||
@@ -488,8 +488,8 @@ Alternatively, build the container yourself:
|
||||
|
||||
```bash
|
||||
# Clone the repo
|
||||
git clone https://gitea.brrd.tech/rob/SmartTools.git
|
||||
cd SmartTools
|
||||
git clone https://gitea.brrd.tech/rob/CmdForge.git
|
||||
cd CmdForge
|
||||
|
||||
# Build the container
|
||||
docker-compose build
|
||||
@@ -498,7 +498,7 @@ docker-compose build
|
||||
docker-compose run --rm test
|
||||
|
||||
# Use the CLI
|
||||
docker-compose run --rm cli smarttools list
|
||||
docker-compose run --rm cli cmdforge list
|
||||
|
||||
# Interactive shell
|
||||
docker-compose run --rm shell
|
||||
@@ -518,12 +518,12 @@ xhost +local:docker
|
||||
docker run -it --rm \
|
||||
-e DISPLAY=$DISPLAY \
|
||||
-v /tmp/.X11-unix:/tmp/.X11-unix \
|
||||
-v smarttools-data:/root/.smarttools \
|
||||
-v cmdforge-data:/root/.cmdforge \
|
||||
--network host \
|
||||
gitea.brrd.tech/rob/smarttools bash
|
||||
gitea.brrd.tech/rob/cmdforge bash
|
||||
|
||||
# Inside the container:
|
||||
smarttools providers install
|
||||
cmdforge providers install
|
||||
```
|
||||
|
||||
**Using docker-compose (build from source):**
|
||||
@@ -533,14 +533,14 @@ xhost +local:docker
|
||||
docker-compose run --rm setup
|
||||
|
||||
# Inside the container:
|
||||
smarttools providers install
|
||||
cmdforge providers install
|
||||
```
|
||||
|
||||
**After installing a provider:**
|
||||
|
||||
```bash
|
||||
# Test the provider works
|
||||
smarttools providers test claude
|
||||
cmdforge providers test claude
|
||||
```
|
||||
|
||||
**Available Providers:**
|
||||
|
||||
Reference in New Issue
Block a user