Environment-aware setup system that automatically detects your context (VPS, Codespaces, local dev) and installs only the tools you need.
git clone https://github.com/ebowwa/seed.git
cd seed
./setup.sh| Tool | Purpose |
|---|---|
| Claude Code | AI coding assistant |
| GitHub CLI | GitHub from terminal |
| Doppler | Secrets management |
| Tailscale | Zero-config VPN |
| OrbStack | Fast Docker & Linux VMs (macOS) |
| Vision MCP | Image/video analysis (Z.ai) |
| Web Search MCP | Real-time web search (Z.ai) |
| GitHub MCP | Repository intelligence |
| chat.sh | Persistent Claude conversations |
# .env file
AI_ASSISTANT=zai
ZAI_API_KEY=your-key
GITHUB_TOKEN=ghp_xxx
DOPPLER_TOKEN=dp.st.xxx
TAILSCALE_AUTH_KEY=tskey-xxx| Environment | Tools |
|---|---|
| VPS/Production | All tools |
| Codespaces | Claude, GitHub CLI, Doppler |
| Local Dev | All tools |
# GitHub CLI
gh auth login
# Tailscale
sudo tailscale up # Linux
tailscale up # macOS
# Doppler
doppler login# Run Claude Code with Z.ai config from Doppler
doppler run --project seed --config prd -- claudeThe chat.sh wrapper enables persistent conversations with Claude across sessions.
# Basic usage
./chat.sh "your prompt here"
# Custom project/config
./chat.sh "prompt" --project myproj --config dev
# Via environment variables
DOPPLER_PROJECT=other DOPPLER_CONFIG=staging ./chat.sh "prompt"How it works:
- Maintains conversation history in
/tmp/c.txt - Each prompt includes full conversation context
- Loads secrets from Doppler (configurable)
- Resets when
/tmp/c.txtis deleted
Communicate with a remote Claude instance on a VPS for distributed AI workflows.
# Example: Chat with remote Claude on Hetzner server
ssh ebowwa-deptwar "cd ~/seed && ./chat.sh 'your prompt'"Use cases:
- Different backends (Z.ai GLM vs Anthropic)
- Independent context/persistence
- Multi-Claude collaboration
- Test prompts across models without local config changes
setup.sh- Main installation scriptsituations.yaml- Environment/tool configschat.sh- Persistent conversation wrapper.env.example- API key template.claude/settings.template.json- Claude settings template.claude/settings.local.json- Local Claude settings.claude/commands/- Claude Code skills (seedistributed-claude.md)
- Never commit
.envfiles - Rotate credentials regularly
- Use environment-specific tokens
MIT