Skip to content

Latest commit

 

History

History
234 lines (209 loc) · 34.9 KB

File metadata and controls

234 lines (209 loc) · 34.9 KB

Changelog

1.4.0 (2026-06-24)

Features

  • added claim debug agent for testing claims (929631d)
  • complete refactor of agent options, soon to become it's own module with useful dsl for agent and application development (929631d)
  • dsl types moved out of test, soon to become a module of it's own (929631d)
  • kotlinx 1.8.1 -> 1.10.0 (929631d)
  • more dsl types for more objects related to agents and requests (929631d)
  • registry agent latest edition is now 5 (929631d)
  • registry agents now have claims and dependencies (929631d)
  • session now has full budget support, support configurable spending control for agents (929631d)
  • session request now specifies values of claims made by agents (929631d)
  • session states now contain a receipt of all claims made by all agents and their values and associated dependencies (929631d)
  • session states now include running budgets for the session and every agent (929631d)

1.3.0 (2026-05-29)

Features

  • add the base exponent as a configuration property (5da1a21)
  • added encoding/decoding for ByteSize with tests (5da1a21)
  • better exceptions from string reference serializer (bad discriminated types used to revert to string decoding rather than reporting any error from those discriminated types) (792725a)
  • bump console to version v0.3.15 (b6fb55d)
  • constant references no longer require a serialization context (792725a)
  • maxStreamCharsUTF8 renamed to maxStreamChars which now counts using bytes instead of UTF-8 chars (5da1a21)
  • PrototypeString now allows inline strings and string constant references (792725a)
  • rename configuration properties around retry delays to make it easier to understand (5da1a21)
  • replace ValidationFileSize and BinaryByteSize with ByteSize (5da1a21)

Bug Fixes

  • decodeBase64Bytes/encodeBase64Bytes replaced with Base64.decode and Base64.encode (64e3699)
  • more comprehensive base64/encoding support for potential string references (fixes bug with blob defaults) (64e3699)
  • proxies field in GraphAgentRequest is now optional (66fb046)
  • update expected exceptions for registry agent string serialization (93f79fe)

1.2.0 (2026-05-08)

Features

  • added tests for the test mcp server, used by prototype runtime tests (861399d)
  • allow config options to be specified using command line arguments (57182c5)
  • cloud: config option to send session ID along with LLM proxy requests (36acce1)
  • current agent edition is now 4 (861399d)
  • Let args be specified via command line args (#269) (57182c5)
  • Print guidance on BindException (#274) (e3c7cdc)
  • prompt adjustments for agent time awareness (861399d)
  • prototype runtime (861399d)
  • prototype runtime powered multi-agent tests (861399d)
  • registry agents can now reference constants (861399d)
  • share model proxy details to agents via envs (#276) (128665e)
  • update gradle to 9.0.0, kotlin to 2.3.20 and jvm version to 24 (#264) (9486783)
  • update to kotling 2.3.10 (861399d)
  • updated kotlin-sdk (861399d)
  • wait tools can now have a customized timeout (861399d)
  • wait tools now require the current time, allowing the replaying of previous messages (861399d)

Bug Fixes

  • all references to jdk on dockerfile now match 24, gradle version upgraded to version 9 (28afa08)
  • GraphAgentTool contains a full MCP tool description (861399d)
  • marketplace extension polymorphic type not inheriting parent class (1e8252c)
  • RegistryAgentExtension for marketplace deserialization fix (861399d)
  • stop implicitly ignoring ~/.coral/agents/* when agents are explicitly defined without including ~/.coral/agents/* (#267) (3c5a041)
  • streamable mcp transport cancellations don't throw exceptions (861399d)
  • update build files and dockerfile for java 24 and gradle 9.0.0 (c832be9)

1.1.0 (2026-03-10)

Features

  • /ui/console can now be disabled in the config (5442640)
  • added an optional extension class to a RestrictedRegistryAgent, allowing the marketplace to provide additional in spec information about agents (d0c7a28)
  • added file/url reference support for default values for options string, list[string], blob and list[blob] (15bd568)
  • added marketplace table to registry agent (3654e10)
  • added new FileAgentRegistrySource tests testWatchDuplicates, testModifyHumanSyntaxError and testWatchRenameFolderHuman (921f69b)
  • added session_running event (58eb42b)
  • added SessionEndReport as a OpenAPI type pending better webhook documentation (e0fcd8d)
  • added support for base64 translation of file/url references (15bd568)
  • added test coverage for deferred session execution (da42d8f)
  • added test coverage for namespace creation and deletion endpoints (da42d8f)
  • added tests testGetNamespaceNames, testGetNamespaceSessions and testNamespaceDeleteOnLastSessionExit (23bce40)
  • added timestamps to events, threads and thread closures (1d171f1)
  • agent annotations now included in agent state (c67388b)
  • AgentRegistrySource's agents field is now mutable (1599800)
  • all ARS' have names now (c62e192)
  • all runtimes now have a "transport" field for specifying either "sse" or "streamable_http" which controls the CORAL_CONNECTION_URL env var (7cf8378)
  • all runtimes now have a "transport" field for specifying either "sse" or "streamable_http" which controls the CORAL_CONNECTION_URL env var (a946763)
  • annotation filters (url base64 encode json maps) available on lsm websocket endpoint (adb1d08)
  • annotations included in lsm events (adb1d08)
  • annotations on agents, sessions and namespaces (31d2738)
  • BasicSession now contains session status (f94f8ea)
  • blob and blob lists now use base64 strings for serialization, with helper functions for dealing with bytes (a4b04c1)
  • bump default console version to 0.3.2 (645f565)
  • change CORAL_CONNECTION_URL to the streamable http url instead of SSE, pending reg3 where the decision can be made in the agent (4a681e7)
  • change CORAL_CONNECTION_URL to the streamable http url instead of SSE, pending reg3 where the decision can be made in the agent (a449c28)
  • coral console automatic bundle downloading and serving, configurable through [console] config table (5a282d6)
  • coral-agent.toml relative pathing for executables (a0454e9)
  • custom tools POST path params (#248) (f5b9eca)
  • description longer optional and is now validated (2190222)
  • deserialization of coral-agent.toml files now must be done with a companion object (9de96c4)
  • dropped number/secret option types (c8dd031)
  • dropped option.description field (now option.display.description) (c8dd031)
  • dropped support for edition 1-2 agents, minimum supported edition is now 3 (c8dd031)
  • edition is no longer optional (e180c3b)
  • edition is now part of the registry agent type (3654e10)
  • executable runtime now has "path" and "argument" fields instead of just "command" (7cf8378)
  • executable runtime now has "path" and "argument" fields instead of just "command" (a946763)
  • FileAgentRegistrySource now supports basic file watching, currently just modifications/deletions for previously matched files (9af0df8)
  • filter potential paths by files that can be executed (76cb35c)
  • Generate keys flag (48a35d5)
  • implemented marketplace API in the MarketplaceAgentRegistrySource (5ac1167)
  • implemented SessionAgentStatus in SessionAgent (64742d3)
  • improved consistency in session api by provided extended and base state options (e96ac65)
  • include PATH in the list of potential files to execute (76cb35c)
  • introduced new FileAgentRegistrySource to replace agent registries (registry.toml) (4bab993)
  • introduced new SessionAgentStatus, containing sub-statuses SessionAgentConnectionStatus and SessionAgentCommunicationStatus (64742d3)
  • keywords re implemented at agent level (5b174fa)
  • license is now either full text or an SDPX expression (5b174fa)
  • ListAgentRegistrySource now provides mutation methods (add/remove) and caching (1599800)
  • LocalSessionManager events refactored to contain more appropriate data, future-proofed for events that do not relate to sessions or namespaces (1913579)
  • log levels (#251) (9e003ec)
  • log levels (#251) (316dc85)
  • major overhaul of FileAgentRegistrySource to refactor for pitfalls in JVM's WatchService (865c6b7)
  • many qol changes for local registry pattern watches (3d14efa)
  • marketplace renaming to avoid out of spec (no snake case) toml files (332e5d1)
  • marketplace types (9a781f1)
  • more tests for FileAgentRegistrySource (bd6f1d4)
  • moved agent registry to a AgentRegistrySource of FileAgentRegistrySource (4bab993)
  • namespace states now follow session states in having base and extended versions, with one wrapping type (e847b89)
  • namespaces are now objects (so that they may contain annotations) (31d2738)
  • on windows, support variations of the given executable path with .exe, .bat and .cmd extensions (ea20d18)
  • preemptively added agent sleep events (not yet used) (80cf8e5)
  • promoted readme, summary, license and links to [agent] (a6178bb)
  • readme and summary no longer optional (d9af0e9)
  • replaced BasicSession and BasicNamespace with SessionState and SessionNamespaceState (ad8abfc)
  • replaced ConcurrentMutableList with MutableStateFlow, resolving a few rare concurrency bugs around waiting for messages in tests (c9fb254)
  • session post changed location, namespace information is now part of the body (f94f8ea)
  • session runtime settings can specify the session state given in the end report (extended or base) with extendedEndReport: true/false (bbf7225)
  • SessionAgentUsageReport now contains agent annotations (bbf7225)
  • SessionEndReport now contains namespace and session states rather than names and IDs (bbf7225)
  • sessions now have a full status type instead of just a closing boolean (50a85b6)
  • sessions' launching can be deferred (31d2738)
  • SessionState renamed to SessionStateBase, SessionState now a sealed type that can contain either base or extended variants (c49726c)
  • socket agent (5007cea)
  • support for file and url references on agent.license.text (spdx), agent.description, agent.readme and agent.summary (9de96c4)
  • support for rescanning local agents on a timer (0f0b297)
  • tests for FileAgentRegistrySource (883b652)
  • timestamps (#250) (c71a5e7)
  • timestamps (#250) (1a83071)
  • updated tomlkt (c8dd031)
  • use Instant with a custom ISO-8601 serializer for timestamps across the project (32556df)
  • use Instant with a custom ISO-8601 serializer for timestamps across the project (c4ebdd7)
  • validation for all fields in RegistryAgent, validating on resolution (d1e2354)
  • warning for duplicate names is done in the AgentRegistry instead of the builder now, allowing re-issuing of the warning later when new agents are added dynamically (c62e192)
  • watchLocalAgents config value (default true) added to registry config (e.g registry.watch_local_agents) (9af0df8)

Bug Fixes

  • /ui/console/* now redirects to index.html (92d3e51)
  • add deprecated comments (70de091)
  • add libudev-zero (8cb739b)
  • add libudev1 + switch to jammy everywhere (8cb739b)
  • add other missing libraries (8cb739b)
  • added warnings when agents with duplicate names are attempted to be loaded as new or modified into the same FileAgentRegistrySource (3b19652)
  • adjusted testModify to actually check for modifications (921f69b)
  • agent reading from modification is debounced now, fixing multiple reloads and instances were modification notifications were given before the file was fully written (c28b380)
  • AgentRegistry now shows de-duplicated local agents again (5b0cd99)
  • allow unknown keys in toml files to aid in backwards compatibility (bf115ba)
  • apparently jammy is ubuntu (8cb739b)
  • append .html to paths in /ui/console, send 404s to 404.html (964a175)
  • append .html to paths in /ui/console, send 404s to 404.html (c22f499)
  • avoiding caching dependencies that tests might regenerate between runs (65c2910)
  • cancel watch scope even if test fails (1b8ba38)
  • cancel watch scope even if test fails (152db8b)
  • change venv.sh to account for cd now being from agent toml (bbdfb7f)
  • changed sets to lists to support OpenAI (c0527cc)
  • consistent naming of public wallet address (4b0cd1d)
  • coral console cache path directory recursively created (5442640)
  • create namespace route and status code (7f27820)
  • default config path envs in Dockerfile (1e20765)
  • deleting a namespace now guarantees the namespace is no longer in memory before returning (fixs unreliable test) (9ef81b0)
  • downgrade hoplite to get less ugly environment variable names (67a1b9e)
  • fixed return type of listing sessions in a namespace (d228c3b)
  • fixed small possibility of a race condition in logging tests causing logging messages to be written before a listener was listening (43eb024)
  • fixed small possibility of a race condition in logging tests causing logging messages to be written before a listener was listening (00df99d)
  • gave echo agent a considerably longer time to get messages before the next one is sent (1a15e70)
  • improved FileAgentRegistrySource reliability with detecting watch events (1b8ba38)
  • improved FileAgentRegistrySource reliability with detecting watch events (152db8b)
  • include the attempted name in the exception thrown for an invalid name (99100de)
  • joinAgents now waits (instead of throwing an exception) when the agent's job isn't yet launched (fixes rare race condition in tests) (5048b8f)
  • listen on suffixed /sse in exported routes (6c8c5c9)
  • ln to right jar (83300b3)
  • made endpoints optional in erc8004 (d22c919)
  • made UnresolvedRegistryAgent optional fields actually optional (was previously provided by UnresolvedInlineRegistryAgent) (c145345)
  • make run task interactive (023b813)
  • many fixes for the above also (3d14efa)
  • marketplace.pricing.currency defaults to USD and is optional (d1e2354)
  • McpResourceTest, McpSessionEventTest and McpToolTests not executing agents (e3b75a1)
  • McpResourceTest, McpSessionEventTest and McpToolTests not executing agents (e953397)
  • minor bug fixes with certain paths (b30307e)
  • name for namespace name listing is now called getAllNamespaceNames in OpenAPI instead of getAllSessions (139f437)
  • namespaces are actually deleted now when deleteOnLastSessionExit is true and there are no sessions (ca0f736)
  • on windows, prioritize files with executable, command and batch extension over what is specified (fixes gradle, where "gradlew" exists with no extension) (f619ace)
  • oops (8cb739b)
  • OpenAPI schema fixes for coral-rs (a1528aa)
  • proper resource uris (952abf0)
  • proper resource uris (55efd5f)
  • re-evaluate agents/mergedSoruces in AgentRegistry when accessed to support dynamic agent registry sources (397075a)
  • SessionEvent serial name typo (f803311)
  • stop loading user directory agents in tests (993e58f)
  • switch to bullseye-slim (8cb739b)
  • syntax changes for earlier mcp tool schema adjustments (edb715f)
  • testPattern no longer requires strict FS ordering (4f3d736)
  • thread starvation when blocking inappropriate dispatcher passed into FileAgentRegistrySource (57ca606)
  • unix pathing (8b2af4c)
  • unresolved registry agents now set registry agent marketplace field (332e5d1)
  • update agent name max length to 32 characters (51e9976)
  • use DI toml for AgentOptionsTest (445896c)
  • Use new bundle naming format, console bump (ef9dd43)
  • Use new bundle naming format, console bump (a263281)
  • watcher no longer prematurely exits when it finds the wrong path when looking for a specific path (b30307e)
  • we go again (8cb739b)
  • windows pathing fix from PR#257 + cleanup (54acbfa)