Build
Connect & operate
Design & teams
Start hereScope a build in one callBring a spec, a wireframe, or a paragraph. You leave with an architecture, a timeline, and a number.Book a scoping call
AI software
LLM & data systems
Vibe coding
Ready to ship?Put AI where the work isAgents, RAG, and private LLMs wired into the systems your team already uses — not a chatbot bolted to a homepage.Discuss an AI project
Domain firstWe learn your workflow before we model itRegulated, operational, or high-volume — the constraints belong in the schema, not in a training doc.Talk about your domain
Plan smarterEstimate before you commitCost ranges, scope templates, and the questions we ask in discovery — free, no form.Open the cost calculator
Real conversationsTalk with a technical leadNo SDR, no discovery gauntlet. The person on the call is the one who scopes the build.Book a call
Open-Source Testing · k1LoW

runn

runn is a Go-based tool and library for running multi-step scenarios (runbooks) defined in YAML, supporting HTTP, gRPC, database queries, Chrome DevTools Protocol, and SSH/local commands. It serves dual roles: as a CLI for scenario-based testing and automation, and as a Go test helper package for integration testing.

Source: GitHub — github.com/k1LoW/runn
639
GitHub stars
54
Forks
Go
Primary language
MIT
License (OSI-approved)

Key facts

Objective fields from the source. Values we can't verify are shown as “Unknown” rather than guessed.

FieldValue
Repositoryk1LoW/runn
Ownerk1LoW
Primary languageGo
LicenseMIT — OSI-approved
Stars639
Forks54
Open issues26
Latest releasev1.9.4 (2026-06-30)
Last updated2026-07-06
Sourcehttps://github.com/k1LoW/runn

What runn is

runn executes ordered or map-based runbook steps with state propagation, templating via Go's text/template syntax, and pluggable runners (HTTP, gRPC, DB, CDP, SSH). Built in Go with a single-binary distribution model, it integrates with httptest.Server, sql.DB, and grpc.Server for Go testing workflows.

Quickstart

Get the runn source

Clone the repository and explore it locally.

terminalbash
git clone https://github.com/k1LoW/runn.gitcd runn# follow the project's README for install & configuration

Need it deployed, integrated, or customized instead? DEV.co ships production installs.

Best use cases

API Integration Testing

Chain HTTP and gRPC requests with database state verification, using runbook-based scenarios to test multi-service workflows and API contracts without writing code.

Workflow Automation & Monitoring

Define and execute complex operational procedures (login → query → notification) as declarative YAML runbooks, runnable from CI/CD pipelines with minimal setup.

Go Test Harness for Services

Embed runn as a test helper to validate HTTP handlers, gRPC services, and database interactions against realistic multi-step scenarios using live or test databases.

Implementation considerations

  • Runbooks require YAML proficiency; complex scenarios may become difficult to maintain without strong templating discipline and variable management.
  • State is passed between steps via indexed arrays (steps[0].res) or named maps; naming conventions should be enforced to avoid fragility.
  • Runner configuration (HTTP URLs, DB DSNs, gRPC endpoints) must be environment-aware; use environment variable substitution or external config for multi-environment CI/CD.
  • Error handling is binary (step passes or fails); fine-grained assertion logic requires embedded test expressions in YAML, which can become opaque.
  • Debugging runbooks requires CLI logging flags or Go test output; add verbose mode to runbooks early in development to reduce troubleshooting friction.

When to avoid it — and what to weigh

  • Non-Go Codebases — While CLI usage is language-agnostic, the library mode is Go-specific. No native SDKs for Python, Node.js, or Java documented.
  • Visual / Complex UI Testing — Chrome DevTools Protocol support is basic; Selenium/Playwright are better suited for interactive browser testing at scale.
  • High-Throughput Load Testing — runn is designed for scenario validation, not sustained load generation. Use dedicated tools (k6, JMeter) for performance benchmarking.
  • Closed-Source / Proprietary Compliance Requirements — MIT license is permissive but requires review by legal teams in regulated industries; no commercial SLA or indemnification offered.

License & commercial use

runn is licensed under the MIT License, a permissive OSI-approved license. Permits commercial use, modification, and distribution with minimal restrictions (attribution required, no warranty). No copyleft obligations.

MIT license permits commercial use without licensing fees or vendor approval. However, no warranty, SLA, or indemnification is provided. Organizations using runn in production should conduct their own testing and have contingency plans for maintenance gaps. Consider contributing back or funding development if business-critical.

DEV.co evaluation signals

Editorial assessment — not user reviews. Directional, with an explicit confidence level.

SignalAssessment
MaintenanceActive
DocumentationAdequate
License clarityClear
Deployment complexityLow
DEV.co fitGood
Assessment confidenceHigh
Security considerations

Runbooks may embed credentials (passwords, tokens, API keys) in YAML files; use environment variable substitution (${VAR_NAME}) to avoid secrets in version control. No built-in secret rotation, audit logging, or encryption at rest. SSH and Chrome DevTools Protocol runners require careful authentication setup. Validate input data in runbook assertions to prevent injection attacks if runbooks are user-generated.

Alternatives to consider

Postman / Postman CLI

Mature API testing with UI/CLI modes, extensive integrations, and enterprise support. Heavier footprint and vendor lock-in; no multi-protocol support (gRPC, SSH) in free tier.

k6 / Grafana k6

Modern load testing and scenario scripting in JavaScript; superior performance metrics and cloud integration. Focuses on load/stress testing, not functional integration testing.

Cucumber / Gherkin

BDD-style scenario testing with human-readable syntax. Language-agnostic and widely adopted. Steeper learning curve; less suitable for API-first testing without custom step definitions.

Software development agency

Build on runn with DEV.co software developers

Explore runn's YAML-driven runbook model for API testing, database validation, and workflow automation. Start with the quickstart guide or integrate into your Go test suite.

Talk to DEV.co

Related open-source tools

Surfaced by semantic similarity across the DEV.co open-source index.

Related on DEV.co

Explore the category and the services that help you build with it.

runn FAQ

Can I use runn without writing Go code?
Yes. The CLI tool supports YAML runbooks for HTTP, gRPC, DB, and SSH operations. Library mode (as a test helper) requires Go.
Does runn support database transactions and rollback?
Not explicitly documented. DB operations are executed as individual queries; atomic transaction support requires review of the codebase or custom runner implementation.
How do I manage secrets in runbooks?
Use environment variable substitution (${VAR_NAME}) in YAML. Store secrets in a vault or CI/CD secret manager; never commit credentials to version control.
Is runn suitable for production monitoring?
Not by itself. runn is a testing and automation tool; for production monitoring, integrate runbook execution into a scheduler (cron, Kubernetes CronJob) and monitor exit codes/logs externally.

From evaluation to production software

Open-source adoption creates integration work. DEV.co supplies the software development services that close the gap between runn and a running open-source testing system your team can operate.

Ready to streamline your integration testing?

Explore runn's YAML-driven runbook model for API testing, database validation, and workflow automation. Start with the quickstart guide or integrate into your Go test suite.