DEV Community

Cover image for Hacktoberfest: 13 small, well-described issues in a Kotlin library for AI agents
Manuel Alejandro Hermoso
Manuel Alejandro Hermoso

Posted on

Hacktoberfest: 13 small, well-described issues in a Kotlin library for AI agents

Hacktoberfest ends on October 31. If you write Kotlin, or want to, and are looking for a pull request that gets reviewed quickly, here are 13 open issues in Telar. Each one says what to build, which files to read first, and when it's done.

What Telar is

An open-source library (Apache 2.0) for AI agents and workflows in Kotlin Multiplatform. A workflow is a small graph: your own data class is the state, each node is a suspend function that returns a copy of it, and arrows decide what runs next. Around that there are checkpoints, pausing for a person's approval, retries, streaming, a tool-calling agent, MCP tools, and models from Claude, OpenAI, Gemini, Ollama, llama.cpp and LangChain4j. It runs on the JVM, Android, iOS, desktop and in the browser.

It's an early alpha, written mostly by one person, which is why your pull request matters here and doesn't disappear in a queue.

What happens to your pull request

The first fix from outside the project came in this week. It was reviewed and merged the same day, and the next morning it was on Maven Central, in 0.1.0-alpha13, with the contributor's name in the release notes.

That's the deal for everyone:

  • A review within a day or two, with concrete comments, not "LGTM" and not silence.
  • Your name in the changelog and the release notes of the version that ships your change.
  • hacktoberfest-accepted on every merged pull request, and the repository has the hacktoberfest topic.
  • CI runs on your pull request by itself, so you see the result without waiting for anyone.

The issues

A sample: one evening, the public API only

Each of these is a small runnable program, plus a test, that shows one feature. You read a guide, write code that uses the library, and the guide gets a "runnable version" link to yours. You don't need to know the internals.

  • #73 Go back in a run with history and fork
  • #74 Merge the states of parallel nodes with mergeRules
  • #75 Report progress from inside a node
  • #139 Watch a run with an AgentObserver
  • #140 Try a failing node again with Retry and timeout
  • #141 Charge a card once with effect, also when the step runs again

None of them needs an API key: the samples use a scripted model when there is none.

Small and outside the Kotlin code

  • #77 Make the API reference link back to the documentation site
  • #79 telar-bom: a bill of materials, so an app names the version of Telar once (Gradle)
  • #78 Run the agent sample against a provider you have a key for (Groq, OpenRouter, Mistral, DeepSeek, LM Studio, vLLM, ...) and report what works. A comment already helps; a pull request that adds the result to the guide also counts for Hacktoberfest.

Bigger, for when you want something to sink your teeth into

  • #137 telar-checkpoint-postgres: save runs in PostgreSQL
  • #138 telar-otel: a span for each call to a model and each tool call
  • #80 A docs page for people who know LangGraph for Python
  • #81 Run the JS and Wasm tests of the agent modules in a real browser

How to start

  1. Comment on the issue you want, so two people don't write the same thing. I'll assign it to you.
  2. Set up: a JDK 17 or newer is all you need. Gradle, Kotlin and the rest come with the wrapper.
   git clone https://github.com/deeptelar/telar.git
   cd telar
   ./gradlew :samples:check   # enough for a sample; ./gradlew check for everything
Enter fullscreen mode Exit fullscreen mode
  1. Open the pull request when the issue's "Done when" list is green. CONTRIBUTING.md has the design rules, and questions are welcome on the issue itself.

Changes made with an AI assistant are fine, as long as you understand and have run what you submit.

Links

If you'd rather use it than build it, a star or an issue about what's missing helps too.

Top comments (0)