https://github.com/lex00/wetwire
https://github.com/lex00/wetwire
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/lex00/wetwire
- Owner: lex00
- License: mit
- Created: 2025-12-27T17:18:03.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-01-06T17:31:51.000Z (5 months ago)
- Last Synced: 2026-01-07T08:57:57.754Z (5 months ago)
- Size: 2.73 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Wetwire
[](https://opensource.org/licenses/MIT)
[](https://golang.org/)
Declarative infrastructure-as-code designed for AI-human collaboration.
## What is Wetwire?
Wetwire is a pattern for writing infrastructure-as-code using Go structs. The primary workflow is **design mode**, where an AI agent and human developer work together to generate infrastructure.
```
Developer: "I need a Lambda function that processes S3 uploads"
↓
AI Agent: Generates flat, declarative code
↓
Linter: Enforces patterns
↓
Developer: Reviews, refines, iterates
```
The name is a reference to William Gibson's "Johnny Mnemonic" — representing the interface between human developers and AI agents.
## Key Features
- **Flat declarations** — Scannable blocks, no nested constructor calls
- **AI-optimized** — Patterns designed for generation and review
- **Type-safe** — Full IDE support and static analysis
- **Lint-enforced** — Rules guide toward analyzable code
## Documentation
### Core Documentation
| Document | Description |
|----------|-------------|
| [Wetwire Specification](docs/WETWIRE_SPEC.md) | Philosophy, requirements, and algorithms |
| [Feature Matrix](docs/FEATURE_MATRIX.md) | Cross-domain feature comparison |
| [FAQ](docs/FAQ.md) | Frequently asked questions |
### For Contributors
| Document | Description |
|----------|-------------|
| [Domain Guide](docs/DOMAIN_GUIDE.md) | How to create a new domain package |
| [Documentation Guide](docs/DOCUMENTATION_GUIDE.md) | Documentation standards and style |
### Architecture
| Document | Description |
|----------|-------------|
| [Architecture](docs/architecture/ARCHITECTURE.md) | System design and implementation details |
| [Code Generation](docs/architecture/CODEGEN_WORKFLOW.md) | Schema fetching and code generation |
## Repositories
### Core Package
| Repository | Description |
|------------|-------------|
| [wetwire-core-go](https://github.com/lex00/wetwire-core-go) | Agent infrastructure, providers, MCP |
### Domain Packages — Infrastructure
| Repository | Description |
|------------|-------------|
| [wetwire-aws-go](https://github.com/lex00/wetwire-aws-go) | AWS CloudFormation synthesis |
| [wetwire-k8s-go](https://github.com/lex00/wetwire-k8s-go) | Kubernetes manifest synthesis |
| [wetwire-azure-go](https://github.com/lex00/wetwire-azure-go) | Azure ARM template synthesis |
### Domain Packages — CI/CD
| Repository | Description |
|------------|-------------|
| [wetwire-github-go](https://github.com/lex00/wetwire-github-go) | GitHub Actions synthesis |
| [wetwire-gitlab-go](https://github.com/lex00/wetwire-gitlab-go) | GitLab CI synthesis |
### Domain Packages — Observability
| Repository | Description |
|------------|-------------|
| [wetwire-honeycomb-go](https://github.com/lex00/wetwire-honeycomb-go) | Honeycomb query synthesis |
### Domain Packages — Graph
| Repository | Description |
|------------|-------------|
| [wetwire-neo4j-go](https://github.com/lex00/wetwire-neo4j-go) | Neo4j GDS pipeline synthesis |
## Status
| Domain | Status |
|--------|--------|
| AWS CloudFormation | ✅ Active |
| GitHub Actions | ✅ Active |
| GitLab CI | ✅ Active |
| Kubernetes | ✅ Active |
| Azure ARM | ✅ Active |
| Honeycomb | 🔨 Scaffold |
| Neo4j GDS | 🔨 Scaffold |
**Status Key:**
- ✅ **Active** — Feature-complete, in production use
- 🔨 **Scaffold** — Repository created, under development
## Getting Started
### With Claude Code (Recommended)
The easiest way to use wetwire is with [Claude Code](https://claude.ai/claude-code):
1. Install a domain package:
```bash
go install github.com/lex00/wetwire-github-go@latest
```
2. Add the MCP server to your Claude Code settings (`~/.claude/settings.json`):
```json
{
"mcpServers": {
"wetwire-github": {
"command": "wetwire-github-mcp"
}
}
}
```
3. Start Claude Code in your project and ask it to generate infrastructure
### Manual Setup
1. Read the [Wetwire Specification](docs/WETWIRE_SPEC.md) for philosophy and patterns
2. Choose a domain package and follow its Quick Start guide:
- [wetwire-aws-go](https://github.com/lex00/wetwire-aws-go) — Quick Start
## License
MIT