Scriptable interpreter written in golang
AI Analysis
Anko is a scriptable interpreter written in Go that enables embedding a dynamically-typed scripting language within Go applications. It serves developers who need to expose user-facing scripting capabilities or provide runtime code evaluation in Go programs. It is specialized for embedding scenarios and not intended as a general-purpose language for standalone development.
Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.
AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.
Lightweight Go-embedded scripting language for programmatic extensibility and automation workflows
Anko is a Go-based scripting interpreter designed to be embedded in Go applications, enabling runtime script execution without external dependencies. It serves developers who need to add user-facing or internal scripting capabilities to Go programs. The project has maintained steady, modest adoption in niche automation and extensibility scenarios, supported by an author with strong OSS credentials (mattn). Real-world production adoption remains not fully verified in public documentation.
Created in March 2014 by Yasuhiro Matsumoto (mattn), a prolific Go contributor. Anko emerged as a lightweight alternative to embedding full language runtimes (Python, Lua, JavaScript) in Go applications. The project has remained under active maintenance with periodic updates, though growth has remained incremental over 12 years.
Stars have accumulated slowly and consistently (1,575 over 12 years) with no recent acceleration. The project gained some visibility in the Go community as a minimal scripting option for tool builders and embedded use cases. Recent push activity (July 2026) indicates continued maintenance rather than active feature development or growth momentum. Zero stars in the last 7 days suggests stable, plateau-level adoption.
Adoption not verified. README provides embedded usage examples and command-line tool examples, but contains no case studies, production deployment documentation, or public user testimonials. Open Collective financial contributors exist but organization names/counts not disclosed in truncated README. Financial backing suggests some level of real-world reliance, but scale and scope unknown.
Based on README: Anko exposes a VM-based interpreter through a simple Go API. Users define environments (`env.NewEnv()`), bind Go functions into that environment, and execute scripts against it. The README shows support for basic control flow (if/else, loops implied), data structures (slices, maps, structs), and function definitions. Appears to be a tree-walking or bytecode interpreter; implementation details not visible from metadata.
README references a CI badge and codecov integration, suggesting automated testing is in place. Explicit coverage percentages not disclosed in README.
Last push July 10, 2026 (same as evaluation date) indicates active maintenance. CI workflows present. No evidence of recent major feature additions or breaking releases in README. Described as 'master branch not stable' with recommendation to use tagged releases, suggesting deliberate versioning strategy but also indicating API surface may shift.
ADOPT IF: you are building a Go application that requires user-configurable script execution, want minimal external runtime dependencies, do not need a mature language ecosystem, and accept potential API instability on the master branch. AVOID IF: you need production-grade stability guarantees, require extensive language features or standard library, or prioritize broad community support and third-party packages. MONITOR IF: you are evaluating embedded scripting options and want to track whether Anko reaches wider adoption in specific verticals (DevOps tooling, configuration management, game modding).
Independent dimensions
Mainstream potential
2/10
Technical importance
5/10
Adoption evidence
2/10
- Master branch API instability acknowledged in README; users directed to tagged releases, creating friction for new adopters
- Adoption not verified at scale; unclear which real-world systems depend on Anko; limited public case studies or endorsements
- Slow recent growth (0 stars/7 days) and modest fork count (132) suggest limited community momentum and low barrier to maintenance burden if author disengages
- Incomplete feature parity with mature scripting languages; likely limited standard library, error handling, and debugging tooling compared to Python, Lua, or JavaScript runtimes
- Long-term roadmap and versioning strategy not documented in README; no visible governance or succession plan
Anko will likely remain a stable, niche tool for Go developers seeking minimal-overhead scripting in embedded contexts. Growth will remain modest unless significant adoption emerges in a high-visibility vertical (DevOps, cloud tooling). Maintenance will probably continue at current levels given author's track record, but project is unlikely to become a dominant choice in its category.
Explore similar
Newsletter
Get analyses like this every Monday
Free weekly digest of the most interesting open-source discoveries.
Languages
Information
- Language
- Go
- License
- MIT
- Last updated
- 12h ago
- Created
- 150mo ago
- Analyzed with
- anthropic/claude-haiku-4-5
Stars over time
Contributors over time
Top 100 contributors only — repos with more will plateau at 100.
Open issues
Data race when running scripts concurrently
Methods definition
when "new" and "make" structure, field will not be zero value.
Can a function be created
Instance defined with VmModules is not a new instance
Top contributors
Recent releases
No releases published yet.
Similar repos
| Repository | Stars | Week Δ | Language | Score | Updated |
|---|---|---|---|---|---|
|
|
1.6k | — | Go | 7/10 | 12h ago |
|
|
7k | — | Go | 8/10 | 1w ago |
|
|
2k | — | Go | 8/10 | 1w ago |
|
|
1.3k | — | Rust | 7/10 | 17h ago |
JavaScript interpreter in Go; wider adoption in web/tooling contexts; larger feature surface but heavier dependency
Lua is more mature language; larger ecosystem; similar embedding use case; Anko claims lighter weight
Stricter determinism guarantees; stronger backing; similar embedding story; more complex feature set
Go-native scripting language with similar positioning; unclear relative market position; both serve narrow niche
Modern alternative for sandboxed scripting; higher complexity and overhead; different security model
