Use when the user asks to add Java tabs/examples to mkdocs docs that already have Kotlin examples (files under docs/docs/.md using === "Kotlin" / Knit INCLUDE+SUFFIX blocks). Handles mkdocs-material tabs, Knit directives, @JavaAPI bridge methods, and JVM factory classes.
Splits a class or several classes in the common source set commonMain into JVM and non-JVM parts into jvmCommonMain and nonJvmCommonMain. This is used to provide some JVM-specific functionality for a class on JVM targets (e.g. Kotlin/JVM or Java backend or Android).
Instructions for JetBrains/koog, covering koog ai agent framework, project structure, build & commands, development commands and full build including tests.
Instructions for JetBrains/koog, a project described as: Koog is a JVM (Java and Kotlin) framework for building predictable, fault-tolerant and enterprise-ready AI agents across all platforms – from backend services to Android and iOS, JVM, and even in-browser environments. Koog is based on our AI products expertise…
Instructions for JetBrains/koog, a project described as: Koog is a JVM (Java and Kotlin) framework for building predictable, fault-tolerant and enterprise-ready AI agents across all platforms – from backend services to Android and iOS, JVM, and even in-browser environments. Koog is based on our AI products expertise…
A basic agent uses a predefined strategy with a simple execution flow that works for most common use cases. It accepts a string input (a question, request, or task description) and sends this input to the configured LLM. The LLM may decide to call provided tools. The agent will execute the tools and send the results…
With functional agents, you implement the logic as a function that handles user input, interacts with LLMs, calls tools if necessary, and produces the final output. Compared to graph-based agents, this usually means faster prototyping with the following downsides.
With graph-based agents, you model the behavior as an explicit state machine: nodes of a graph strategy represent actions (LLM calls, tool execution) and edges represent data flow between nodes.
AI agents are autonomous systems that can reason, make decisions, interact with the environment, and take actions to achieve a specific goal. In Koog, an AI agent is more than just a wrapper around an LLM; it is a structured, type-safe state machine designed for the JVM ecosystem.
Evaluate arithmetic expressions and return numeric results. Use when a user asks an arithmetic question, requests calculation, or provides a math expression involving numbers, parentheses, and arithmetic operators.
Retrieve current weather information for a specific location. Use when a user asks for weather, temperature, conditions, forecast summary, or climate details for a city, region, or place.
Use the Modern Go Guidelines CLI whenever writing, modifying, fixing, or refactoring Go code. Apply its version-specific guidance to generated changes.
Use this skill whenever the user asks to commit changes, write or fix a commit message, amend or rename a commit, or do a workflow that includes committing in the IntelliJ repository. This is a thin repo-specific overlay: use IntelliJ commit format, write full commit messages by default, and keep requested suffixes…
Wire MPS module and model dependencies, used languages, used devkits, extended languages, runtime solutions, accessory models, and language/dependency versions. Use when adding/removing module dependencies, importing languages or devkits into a model, declaring runtime solutions, or shipping accessory content visible…
Use when defining or editing MPS node factories (the "actions" aspect) — NodeFactories roots, per-concept NodeFactory setup functions that initialize a freshly created node and optionally copy data from a replaced sampleNode, plus the actions aspect's CopyPasteHandlers and PasteWrappers roots. Reach for this skill…
Use when defining or editing MPS ConceptBehavior — per-concept methods (non-virtual / virtual / abstract / static / virtual static), constructors, virtual dispatch (MRO), super and interface-default calls (super .method), overriding methods from lang.core.behavior interfaces such as ScopeProvider.getScope /…
Use when defining or debugging MPS dataflow builders for a concept — control/data flow declarations that drive reachability analysis and variable-use checking. Covers DataFlowBuilderDeclaration, BuilderBlock, emit instructions (code for, jump, ifjump, label, read, write, ret, mayBeUnreachable), positions…
Use when authoring the non-layout parts of the MPS editor aspect — what happens when the user types, presses a key, triggers completion, pastes, or invokes a context action. Covers action maps (CellActionMapDeclaration), cell keymaps (CellKeyMapDeclaration), transformation menus (TransformationMenuDefault / Named /…