Add Docker support and documentation updates
- Add Dockerfile for containerized builds - Add .dockerignore for cleaner builds - Add CLAUDE.md for development guidance - Update README and docs 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <[email protected]>
This commit is contained in:
@@ -123,6 +123,59 @@ cat file.txt | mytool --dry-run
|
||||
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.
|
||||
|
||||
```bash
|
||||
# Chain SmartTools together
|
||||
cat error.log | log-errors | summarize | translate --lang Spanish
|
||||
|
||||
# Code review pipeline: focus on changes, review, then summarize
|
||||
git diff | diff-focus | review-code | tldr
|
||||
|
||||
# Extract data, convert format, analyze
|
||||
cat report.pdf | json-extract --fields "revenue, costs, date" | json2csv | csv-insights
|
||||
|
||||
# Process text through multiple transformations
|
||||
cat technical_doc.txt | simplify | fix-grammar | tone-shift --tone friendly
|
||||
|
||||
# Generate code, validate it, then explain what it does
|
||||
echo "parse CSV and calculate averages" | code-validate | explain-code
|
||||
```
|
||||
|
||||
**Mix with standard Unix tools:**
|
||||
|
||||
```bash
|
||||
# Extract emails, deduplicate, count
|
||||
cat inbox.txt | extract-emails | sort -u | wc -l
|
||||
|
||||
# Find errors in multiple logs, explain them
|
||||
cat *.log | grep -i error | explain-error
|
||||
|
||||
# Generate changelog for specific author
|
||||
git log --author="rob" --oneline | changelog > CHANGELOG.md
|
||||
|
||||
# Review only large files in a commit
|
||||
git diff --stat | awk '$3 > 100 {print $1}' | xargs cat | review-code
|
||||
```
|
||||
|
||||
**Build shell functions for common pipelines:**
|
||||
|
||||
```bash
|
||||
# ~/.bashrc
|
||||
quick-review() {
|
||||
git diff "$@" | diff-focus | review-code --focus "bugs and security" | tldr
|
||||
}
|
||||
|
||||
translate-doc() {
|
||||
cat "$1" | summarize | translate --lang "$2"
|
||||
}
|
||||
|
||||
# Usage: quick-review HEAD~3
|
||||
# Usage: translate-doc manual.txt French
|
||||
```
|
||||
|
||||
## Example Tools
|
||||
|
||||
SmartTools comes with 28 pre-built examples you can install:
|
||||
@@ -347,12 +400,17 @@ This lets you generate or modify Python code using AI directly within the tool b
|
||||
|
||||
## Philosophy
|
||||
|
||||
SmartTools is a **personal power tool**:
|
||||
SmartTools is built on **Unix philosophy**:
|
||||
|
||||
- **You own your tools** - YAML files you can read, edit, share
|
||||
- **You choose the AI** - Any provider, swap anytime
|
||||
- **You accept responsibility** - No sandboxing, like any script you write
|
||||
- **Unix philosophy** - Small tools that compose
|
||||
1. **Do one thing well** - Each tool solves one problem. `summarize` summarizes. `translate` translates. No bloated mega-tools.
|
||||
|
||||
2. **Compose freely** - Tools read stdin, write stdout. Chain them: `cat doc.txt | summarize | translate --lang French`
|
||||
|
||||
3. **Text is the interface** - No proprietary formats. Pipe text in, get text out. Works with `grep`, `awk`, `sed`, and every other Unix tool.
|
||||
|
||||
4. **You own everything** - Tools are YAML files. Prompts are plain text. No vendor lock-in, no cloud dependency for your tool definitions.
|
||||
|
||||
5. **Swap parts freely** - Change AI providers per-tool or per-run. Today's best model might not be tomorrow's.
|
||||
|
||||
## Contributing
|
||||
|
||||
|
||||
Reference in New Issue
Block a user