Releases: Atmosphere/atmosphere
Releases · Atmosphere/atmosphere
Atmosphere 4.0.26
Immutable
release. Only release title and notes can be modified.
✨ Added
- trusted skill sources, remote import tests for 3 repos
- console auto-detects @agent endpoint, fix CLI version template
- auto-discover skill files from META-INF/skills/ on classpath
- add import plugin system (--target) for extensible skill scaffolding
- atmosphere import and skills commands
🐛 Fixed
- update AdkEventAdapter test for multi-emit behavior
- ADK turnComplete truncation, CEO port detection, dentist langchain4j deps
- add missing atmosphere-mcp dep to dentist-agent
- last echo to printf in tool loop to prevent backslash mutation
- printf over echo for content, writable tmpdir fallback, test false-green
- ensure cache dir for local files, use printf over echo
- write tool stubs to file to avoid subshell variable loss
- POSIX sh compat, numeric names, backslash escaping, shift guard
- sanitize imports, path traversal, GitHub URL normalization
- correct imports, model, Spring Boot version, add a2a/mcp deps
🔧 Changed
- add channels-chat e2e tests, fix repackage plugin
- add dentist agent e2e tests — 9 specs covering commands, streaming, MCP
- complete annotation reference with all 23 SPI/config annotations
- portability bullets, Broadcaster annotation, npx install, client links
- add portability bullets, fix Broadcaster annotation, link Vue/Svelte/RN
- clarify LLM backend portability and no-lock-in story
- annotation reference, 3.x compat table, LLM backend value props
- skills ecosystem in README, import/skills/trusted sources in CLI docs
- 33 tests for atmosphere import command
- bump version to 4.0.25
- prepare next development version 5.0.17
- prepare for next development iteration 4.0.26-SNAPSHOT
- fix missing Broadcaster injection in README example
Full Changelog: atmosphere-4.0.25...atmosphere-4.0.26
Atmosphere 4.0.25
Immutable
release. Only release title and notes can be modified.
✨ Added
- unify annotations between @agent and @managedservice
🔧 Changed
- show protocol annotations directly on @managedservice
- unit tests for annotation unification (46 tests)
- multi-agent hero, unified protocol matrix, samples table, MCP migration example
- use LLM_API_KEY, remove tagline date
- use LLM_API_KEY, remove Since 2008 section
- rewrite README with multi-agent hero and unified transport/protocol matrix
- bump version to 4.0.24
- prepare next development version 5.0.16
- prepare for next development iteration 4.0.25-SNAPSHOT
Full Changelog: atmosphere-4.0.24...atmosphere-4.0.25
Atmosphere 4.0.24
Immutable
release. Only release title and notes can be modified.
✨ Added
- remove @McpServer/@AgUiEndpoint, upgrade LangChain4j to 1.12.2
- unified @agent, rename @A2aSkill to @AgentSkill, multi-agent sample
- unified @agent with headless mode, remove @a2aserver and fake multi-agent sample
- add multi-agent startup team with 5 AI agents collaborating via WebSocket
- unified AI Console across all samples with logo, subtitle, and dark theme
- add @agent + @command module, samples, and streaming fixes
- add Atmosphere logo to AI Console header
🐛 Fixed
- handle empty find results in update-doc-versions.sh
- update confirmation flow test for unicast command responses
- update integration tests for unified @agent processor
- restore missing run commands in release workflow
- skip chat broadcast tests in MCP sample (headless @agent conflict)
- P0-P2 fixes, MCP path registration, doc cleanup
- update multi-agent test to match new headless log format
- upgrade ai-tools sample to LangChain4j 1.12.2
- make multi-agent test resilient to GEMINI_API_KEY presence in CI
- lazy tool registration — rebuild ADK runner on first request with tools
- skip remaining broken console tests for ai-chat and ai-tools
- fix all remaining demo assertions and skip broken console tests
- skip broken console tests, replace demo assertions with generic checks
- replace demo-specific text assertions with generic response checks
- force A2A agent to demo mode, tests verify protocol not LLM
- loosen assertions for a2a-agent and history-cache with real API
- pass GEMINI_API_KEY secret to E2E test runner
- include atmosphere SNAPSHOT artifacts in E2E build cache
- use tar -m to prevent Maven recompilation in E2E jobs
- include modules/*/target in E2E build artifact for exec:java
🔧 Changed
- consolidate samples — remove 9 redundant, update all references
- rename multi-agent to startup-advisor for accuracy
- consolidate test suites, add build caching and WS readiness probe
- split E2E into separate workflow, fix mcp-tools browser test
- split E2E into 7 parallel matrix jobs for faster feedback
- replace module list with one-liner link to docs
- move channel matrix to docs/channels.md, slim README
- add --skill-file example, trim description
- clean up stale overlays, add sample READMEs, update release exclusions
- link to channel bot setup tutorial
- rebrand README with @agent as first-class citizen
- prepare next development version 5.0.15
- prepare for next development iteration 4.0.24-SNAPSHOT
Full Changelog: atmosphere-4.0.23...atmosphere-4.0.24
Atmosphere 4.0.23
Immutable
release. Only release title and notes can be modified.
✨ Added
- add ChannelFilter chain with MessageSplitting and AuditLogging
- auto-bridge channels to @aiendpoint when atmosphere-ai is present
- wire Discord auto-config + 28 signature/parsing tests
- add Discord Gateway adapter (ported from Canot)
- add omnichannel AI chat sample (Web + Telegram + Slack + Discord + WhatsApp)
- add Discord, WhatsApp, and Messenger adapters
- add Telegram + Slack messaging channels (ported from Canot)
🐛 Fixed
- handle Slack URL verification challenge in webhook controller
- add explicit @PathVariable name for Spring Boot 4 compatibility
- address code review — security, threading, and design fixes
🔧 Changed
- add channels-chat sample to CLI registry and release exclusions
- prepare next development version 5.0.14
- prepare for next development iteration 4.0.23-SNAPSHOT
Full Changelog: atmosphere-4.0.22...atmosphere-4.0.23
Atmosphere 4.0.22
Immutable
release. Only release title and notes can be modified.
✨ Added
- add Discord Gateway adapter (ported from Canot)
🐛 Fixed
- harden modules for virtual thread safety and production readiness
- use ReentrantLock instead of synchronized to avoid virtual thread pinning
- harden AI and MCP modules for production readiness
- prevent path traversal in console resource filter
- prevent BufferUnderflowException in JSR356Endpoint binary message handler
🔧 Changed
- remove channels module accidentally committed to main
- add Embacle to built-in backends table, remove CLI-powered LLM section
- condense modules, requirements, and docs sections in root README
- improve zero-code AI description
- add brew install to zero-code AI demo section
- update support section in root README
- collapsible React/Vue/Svelte/React Native client examples in README
- replace BOM XML with one-liner CLI command in zero-code AI section
- add React/Vue/Svelte client examples for AI streaming in root README
- lead README with zero-code AI demo, move JBang above modules
- Merge pull request #2551 from Atmosphere/dependabot/npm_and_yarn/atmosphere.js/npm_and_yarn-67fcbebea9
- Merge pull request #2554 from Atmosphere/cli-version-bump-4.0.21
- Improve README formatting and structure
- bump version to 4.0.21
- prepare next development version 5.0.13
Full Changelog: atmosphere-4.0.21...atmosphere-4.0.22
Atmosphere 4.0.21
Immutable
release. Only release title and notes can be modified.
✨ Added
- zero-code AI auto-config, built-in chat console, and atmosphere-bom
🐛 Fixed
- add spring-boot-ai-console to release exclusions, use BOM in root README
- cast int to long before bit-shifting in ClassFileBuffer.readLong()
🔧 Changed
- update AI provider comment to mention Embacle CLI support
- move AI adapters line to intro paragraph, trim core abstractions
- restructure README quick start with zero-code AI, @aiendpoint, and @managedservice
- replace ManagedService quick start with zero-code AI demo in root README
- skip PMD on JDK 26 (ASM does not support class file version 70)
- use Oracle distribution for JDK 26 (Temurin not yet available)
- add JDK 26 to build matrix
- add Playwright E2E tests for A2A agent and AG-UI chat samples
- prepare next development version 5.0.12
- prepare for next development iteration 4.0.21-SNAPSHOT
Full Changelog: atmosphere-4.0.20...atmosphere-4.0.21
Atmosphere 4.0.20
Immutable
release. Only release title and notes can be modified.
✨ Added
- add A2A, AG-UI protocol modules and atmosphere-protocol-common
- prepare create-atmosphere-app for npm publish
🐛 Fixed
- wait for HTTP readiness after port open in E2E sample-server
- pass realistic maxMessages to SummarizingStrategy in E2E test
🔧 Changed
- exclude new samples from release deploy (a2a-agent, agui-chat, rag-chat)
- add A2A and AG-UI to main README modules table and agent protocols section
- add CLI install tests for curl, npx, and brew on macOS + Linux
- bump version to 4.0.19
- prepare next development version 5.0.11
- prepare for next development iteration 4.0.20-SNAPSHOT
Full Changelog: atmosphere-4.0.19...atmosphere-4.0.20
Atmosphere 4.0.19
Immutable
release. Only release title and notes can be modified.
✨ Added
- add tool-activity panel to adk-tools and langchain4j-tools
- add Playwright tests for all 17 samples
- add Playwright e2e tests to CLI build matrix
- build-from-source distribution, replace pre-built JAR downloads
- add AI testing framework with AiTestClient, AiResponse, and fluent assertions
- auto-emit tool events from ToolRegistry, update generator templates
- demonstrate AiEvent tool events, capability validation, and event streaming
- add memory strategies, StructuredOutputParser, RAG enhancements, event bridging
- add AiEvent sealed interface, identity fields, capability validation
- add detail modals to all cards in both sections
- add ./room, ./streaming, ./queue subpath exports
- add AI streaming guide CTA alongside getting started
- add Embabel and link all AI adapter vendors
- add About section, deep-link capability cards, reorder sections
🐛 Fixed
- use fallback git-add for optional paths in release workflow
- remove stale docs/ from release git-add, use --ignore-missing
- skip docs/ version update when directory is absent
- add ConditionalOnBean to nested McpTracing config
- rebuild frontend bundle to include ToolActivity component
- fix ai-tools timing and adk-chat demo streaming
- otel-chat uses simple connectivity tests (no Room Protocol)
- catch Throwable from OTel SDK init (NoSuchMethodError)
- gracefully handle OTel SDK init failure with noop fallback
- isolate McpTracing auto-config to avoid NoClassDefFoundError
- set SAMPLE env var in Playwright step for project discovery
- increase message latch timeout to 20s for slow CI long-polling
- revert byte-path sanitization that broke WebSocket JSON responses
- isolate tests with per-room broadcasters to eliminate flaky CI failures
- stabilize ChatIntegrationTest with proper inter-test cleanup
- update adapter tests for AiEvent wire format
- remove requires=TOOL_CALLING from ai-tools (built-in lacks it in demo mode)
- populate identity fields in stream(), implement sendContent for binary
- update test assertion for renamed ai-chat description
- sanitize byte output paths for XSS (CodeQL alerts 19-24)
🔧 Changed
- move website and docs to Atmosphere/atmosphere.github.io
- move website deploy to atmosphere.github.io, add dispatch trigger
- support workflow_dispatch with tag input for release-samples
- add workflow_dispatch trigger to release-samples.yml
- prepare next development version 5.0.10
- prepare for next development iteration 4.0.16-SNAPSHOT
- bump Jackson 2.18.3→2.18.6, Jetty 12.0.16→12.0.32 (CVE fixes)
- add AiEvent, identity fields, MemoryStrategy to AI reference
- add AiEvent, capability validation, memory strategies to tutorials and whats-new
- update READMEs for @aiendpoint model, add generator contract tests
- add Playwright specs for AiEvent, identity fields, memory strategies
- AI-first cards, business-value reasons, all clickable
- remove doc deep links, use value-focused copy throughout
- document lock ordering, tighten catch blocks, add null guards
- replace code example with 'Why developers choose Atmosphere' section
Full Changelog: atmosphere-4.0.14...atmosphere-4.0.19
Atmosphere 4.0.14
Immutable
release. Only release title and notes can be modified.
✨ Added
- add auth, offline queue, history cache, typing indicators, and optimistic updates
- scaffold complete runnable projects with handler, encoder, decoder, and chat UI
- add interactive sample installer with fzf/numbered-menu picker
- add Atmosphere CLI, npx launcher, Homebrew formula, and release workflow
- add shared frontend and Playwright E2E tests for RAG chat sample
- add ServiceLoader discovery for MicrometerAiMetrics and top-level tracing
- expand Playwright coverage to 4 samples with 15 tests Fix multi-browser bug in App.tsx and add multi-project Playwright infrastructure
- add Micrometer observability and tracing session decorator
- add bidirectional tool invocation bridge for server-to-client tool calls
- add RAG context provider module with Spring AI and LangChain4j bridges
🐛 Fixed
- use renamed SessionStats properties in AI chat frontend
- prevent broadcaster cache from replaying user prompts on new connections Add BroadcasterCacheInspector to only cache RawMessage (AI responses), not String (user prompts)
- send auth token from AI chat frontend and increase durable session timeout
- enable reconnect for long-polling client in WAsync integration test
- add spring-ai and adk modules to Samples CI install step
- align RAG chat endpoint path and add actuator metrics support
- update cache coalescing tests for streaming-text rename
- update all JS bundles for streaming-text wire protocol rename
- update AI integration tests for streaming-text wire protocol rename
- wire MicrometerAiMetrics auto-discovery and top-level session tracing
🔧 Changed
- add CLI section to main README with install, run, and npx examples
- add 74-test CLI suite and add CLI/JBang sections to samples README
- expand Playwright coverage across 11 sample specs with 24 new tests
- update README to reflect auto-discovery and contextProviders attribute
- add multi-sample broadcast and room test suites
- add RAG module README and update docs for MCP bidirectional and observability
- add Playwright WebSocket broadcast tests with 3 Chrome windows
- unify AI adapters with AbstractAiSupport and shared tool utilities
- prepare next development version 5.0.8
- prepare for next development iteration 4.0.14-SNAPSHOT
Full Changelog: atmosphere-4.0.13...atmosphere-4.0.14
Atmosphere 4.0.13
Immutable
release. Only release title and notes can be modified.
🐛 Fixed
- stash unstaged changes before rebase in release workflow
- use recursive docs/ path in release commit step
- adapt GrpcProcessor to Action record API
- sync version constant with package.json and eliminate hardcoded version
- fix contract violations in Response, Request, and diagnostics
🔧 Changed
- fix doc version drift and automate version updates in release pipeline
- extract shared hook lifecycle and expose manual controls
- extract NoOpsRequest and stream adapters from AtmosphereRequestImpl
- isolate container patching into ContainerPatcher with opt-out
- centralize reflective type registry for Spring AOT and Quarkus native
- use Duration for time-based configuration properties
- decompose AtmosphereResponseImpl into ResponseWriter and metadata
- replace boolean soup with LifecycleState in AtmosphereResourceImpl
- extract lifecycle and membership from DefaultBroadcaster
- extract init pipeline into FrameworkBootstrap
- centralize annotation metadata into AtmosphereAnnotations registry
- use Duration for time-based configuration properties
- convert Body to sealed interface with StringBody, BytesBody, EmptyBody records
- remove redundant method re-declarations from Request/Response interfaces
- convert configureTransport to switch expression
Full Changelog: atmosphere-4.0.11...atmosphere-4.0.13