CtrlK
BlogDocsLog inGet started
Tessl Logo

jbaruch/koog

Koog 1.0 idioms, gotchas, and scaffolding skills for Kotlin agents on the JVM

88

1.95x
Quality

88%

Does it follow best practices?

Impact

88%

1.95x

Average score across 43 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

edge-primitive-imports.mdskills/author-strategy/references/

Edge Primitive Imports — Members vs Extensions

The infix vocabulary in the strategy DSL splits across two shapes. Inventing a member import or omitting an extension import is the most common copy-paste compile failure when authoring strategies by hand.

PrimitiveKindImport needed?
forwardToinfix member on AIAgentNodeBaseNo
onConditioninfix member on AIAgentEdgeBuilderIntermediateNo
transformedinfix member on AIAgentEdgeBuilderIntermediateNo
onToolCallstop-level extensionimport ai.koog.agents.core.dsl.extension.onToolCalls
onTextMessagetop-level extensionimport ai.koog.agents.core.dsl.extension.onTextMessage
onIsInstancetop-level extensionimport ai.koog.agents.core.dsl.extension.onIsInstance
onMessagePartstop-level extensionimport ai.koog.agents.core.dsl.extension.onMessageParts
onSuccessful / onFailuretop-level extensionsimport ai.koog.agents.core.dsl.extension.onSuccessful / onFailure
asUserMessage / asToolResultMessagetop-level extensionsimport ai.koog.agents.core.dsl.extension.asUserMessage / asToolResultMessage

Members travel with their receiver type and need no import. Extensions live in ai.koog.agents.core.dsl.extension.* and must be imported by name. Star-imports work but obscure which DSL surface is actually in use.

skills

author-strategy

README.md

tile.json