Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

envkit

Agentic-first environment variable manager. No UI, no SDK — the AI agent is the user. The API is the product.

Quick Start

# Build
make build

# Run (zero config)
./envkit

# Or with custom port/data
./envkit --port 9090 --data ./envkit.json

Auth Flow

# 1. Request OTP
curl -X POST http://localhost:8080/auth/request -d '[email protected]'

# 2. Verify OTP (check server logs for the code)
curl -X POST http://localhost:8080/auth/verify -d '[email protected]&code=123456'
# Returns: token=env_xxxxx workspace=ws_xxxxx

# 3. Use the token
curl -H "Authorization: Bearer env_xxxxx" http://localhost:8080/projects

Core Operations

Projects

# Create
curl -H "Authorization: Bearer $TOKEN" -X POST http://localhost:8080/projects -d 'name=myapp'

# List
curl -H "Authorization: Bearer $TOKEN" http://localhost:8080/projects

# Get
curl -H "Authorization: Bearer $TOKEN" http://localhost:8080/projects/proj_abc123

# Delete
curl -H "Authorization: Bearer $TOKEN" -X DELETE http://localhost:8080/projects/proj_abc123

Environments

# Create
curl -H "Authorization: Bearer $TOKEN" -X POST http://localhost:8080/environments -d 'project=proj_abc123&name=production'

# List by project
curl -H "Authorization: Bearer $TOKEN" 'http://localhost:8080/environments?project=proj_abc123'

# Delete
curl -H "Authorization: Bearer $TOKEN" -X DELETE http://localhost:8080/environments/env_xyz789

Variables

# Create
curl -H "Authorization: Bearer $TOKEN" -X POST http://localhost:8080/variables -d 'environment=env_xyz789&key=DATABASE_URL&value=postgres://localhost&secret=true'

# List by environment
curl -H "Authorization: Bearer $TOKEN" 'http://localhost:8080/variables?environment=env_xyz789'

# Delete
curl -H "Authorization: Bearer $TOKEN" -X DELETE http://localhost:8080/variables/var_mno456

Export

# .env format
curl -H "Authorization: Bearer $TOKEN" http://localhost:8080/export/env_xyz789?format=env

# Shell format
curl -H "Authorization: Bearer $TOKEN" http://localhost:8080/export/env_xyz789?format=shell

Audit Log

curl -H "Authorization: Bearer $TOKEN" http://localhost:8080/audit

JSON Responses

Add Accept: application/json header or ?format=json query param for JSON responses.

MCP Connector

The service speaks Model Context Protocol at /mcp for chat client integrations.

Self-Documentation

  • GET /help — one-page operating manual
  • GET /.well-known/agent.md — agent-friendly documentation

Tech Stack

  • Language: Go
  • Storage: JSON file (zero external dependencies)
  • Architecture: Single binary, internal package structure
  • Build: make build, make test, make vet

License

MIT

About

Agentic-first environment variable and configuration management service. Store, manage, and export environment configs across projects and environments. Plain text API, agent-driven, single Go binary with JSON file storage.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages