Teknium
86b1db0598
Merge pull request #43 from grp06/codex/align-codex-provider-conventions-mainrepo
...
Enable ChatGPT subscription Codex support end-to-end
2026-02-28 18:13:58 -08:00
Teknium
5a79e423fe
Merge branch 'main' into codex/align-codex-provider-conventions-mainrepo
2026-02-28 18:13:38 -08:00
teknium1
7f7643cf63
feat(hooks): introduce event hooks system for lifecycle management
...
Add a new hooks system allowing users to run custom code at key lifecycle points in the agent's operation. This includes support for events such as `gateway:startup`, `session:start`, `agent:step`, and more. Documentation for creating hooks and available events has been added to `README.md` and a new `hooks.md` file. Additionally, integrate step callbacks in the agent to facilitate hook execution during tool-calling iterations.
2026-02-28 17:09:26 -08:00
teknium1
bf52468a91
fix(gateway): improve MEDIA tag handling to prevent duplication across turns
...
Refactor the extraction of MEDIA paths to collect them from the history before processing the current turn's messages. This change ensures that MEDIA tags are deduplicated based on previously seen paths, preventing TTS voice messages from being re-attached in subsequent replies. This addresses the issue outlined in #160 .
2026-02-28 16:49:49 -08:00
Teknium
b4688f10d4
Merge pull request #176 from Bartok9/fix-tts-voice-accumulation
...
fix(gateway): prevent TTS voice messages from accumulating across turns
2026-02-28 16:45:52 -08:00
Teknium
31a5cd185a
Merge pull request #174 from Bartok9/fix-think-block-leakage
...
fix: strip <think> blocks from final response to users
2026-02-28 16:43:47 -08:00
teknium1
7b23dbfe68
feat(animation): add support for sending animated GIFs in BasePlatformAdapter and TelegramAdapter
2026-02-28 11:25:44 -08:00
teknium1
8e0c48e6d2
feat(skills): implement dynamic skill slash commands for CLI and gateway
2026-02-28 11:18:50 -08:00
teknium1
2205b22409
fix(headers): update X-OpenRouter-Categories to include 'productivity'
2026-02-28 10:38:49 -08:00
teknium1
1ddf8c26f5
refactor(cli): update max turns configuration precedence and enhance documentation
2026-02-28 10:35:49 -08:00
teknium1
6366177118
refactor: update context compression configuration to use config.yaml and improve model handling
2026-02-28 04:46:38 -08:00
Teknium
0afe1b707d
Merge pull request #178 from gamedevCloudy/main
...
fix(install): ignore commented lines when checking for PATH
2026-02-28 02:14:31 -08:00
Aayush Chaudhary
f213620c8b
fix(install): ignore commented lines when checking for existing PATH configuration
2026-02-28 14:28:18 +05:30
Bartok9
35655298e6
fix(gateway): prevent TTS voice messages from accumulating across turns
...
Fixes #160
The issue was that MEDIA tags were being extracted from ALL messages
in the conversation history, not just messages from the current turn.
This caused TTS voice messages generated in earlier turns to be
re-attached to every subsequent reply.
The fix:
- Track history_len before calling run_conversation
- Only scan messages AFTER history_len for MEDIA tags
- Add comprehensive tests to prevent regression
This ensures each voice message is sent exactly once, when it's
generated, not on every subsequent message in the session.
2026-02-28 03:38:27 -05:00
Bartok9
1e463a8e39
fix: strip <think> blocks from final response to users
...
Fixes #149
The _strip_think_blocks() method existed but was not applied to the
final_response in the normal completion path. This caused <think>...</think>
XML tags to leak into user-facing responses on all platforms (CLI, Telegram,
Discord, Slack, WhatsApp).
Changes:
- Strip think blocks from final_response before returning in normal path (line ~2600)
- Strip think blocks from fallback content when salvaging from prior tool_calls turn
Notes:
- The raw content with think blocks is preserved in messages[] for trajectory
export - this only affects the user-facing final_response
- The _has_content_after_think_block() check still uses raw content before
stripping, which is correct for detecting think-only responses
2026-02-28 03:06:20 -05:00
teknium1
de5a88bd97
refactor: migrate tool progress configuration from environment variables to config.yaml
2026-02-28 00:05:58 -08:00
teknium1
0862fa96fd
refactor(domain-intel): streamline documentation and add CLI tool for domain intelligence operations
2026-02-27 23:53:24 -08:00
Teknium
924570c5be
Merge pull request #136 from FurkanL0/feat/domain-intel-skill
...
feat(skills): add passive domain intelligence skill — subdomains, SSL, WHOIS, DNS, availability
2026-02-27 23:47:50 -08:00
teknium1
4d8689c10c
feat: add honcho-ai package to dependencies and update extras in uv.lock
2026-02-27 23:45:52 -08:00
teknium1
1d7ce5e063
feat: integrate honcho-ai package and enhance tool progress callback in delegate_tool
2026-02-27 23:45:52 -08:00
Teknium
72d3425eef
Merge pull request #94 from cesareth/feat/verbose-slash-command
...
feat(cli): add /verbose slash command to toggle debug output at runtime
2026-02-27 23:41:25 -08:00
teknium1
b7f099beed
feat: add Honcho integration for cross-session user modeling
2026-02-27 23:41:08 -08:00
Teknium
912ef50165
Merge pull request #38 from plastic-labs/feat/honcho-integration
...
feat: Honcho memory integration (opt-in)
2026-02-27 23:35:29 -08:00
Teknium
4a9086b848
Merge branch 'main' into feat/honcho-integration
2026-02-27 23:32:49 -08:00
teknium1
50cb4d5fc7
fix(agent): update error message for unsupported Anthropic API endpoints to clarify usage of OpenRouter
2026-02-27 23:23:31 -08:00
Teknium
2bc9508b7c
Merge pull request #173 from adavyas/fix/anthropic-base-url-guard
...
fix(agent): fail fast on Anthropic native base URLs
2026-02-27 23:22:01 -08:00
Teknium
337cd574c8
Merge pull request #167 from Jr-kenny/pr/docs-codefences
...
fix(docs): add missing code block language specifiers
2026-02-27 23:16:27 -08:00
Teknium
9fb027915e
Merge pull request #166 from Jr-kenny/pr/docs-config
...
fix(docs): correct CLI config precedence and paths
2026-02-27 23:15:36 -08:00
Teknium
2b821c3a14
Merge pull request #162 from aydnOktay/fix/memory-tool-entry-delimiter-parsing
...
Fix memory tool entry parsing when content contains section sign
2026-02-27 23:13:15 -08:00
Teknium
0d113fab1a
Merge pull request #158 from Indelwin/feature/docker-volumes
...
feat: add docker_volumes config for custom volume mounts
2026-02-27 23:06:06 -08:00
teknium1
19f28a633a
fix(agent): enhance 413 error handling and improve conversation history management in tests
2026-02-27 23:04:32 -08:00
Teknium
2c817ce4a5
Merge pull request #153 from tekelala/main
...
fix(agent): handle 413 payload-too-large via compression instead of aborting
2026-02-27 22:57:55 -08:00
teknium1
66a5bc64db
fix(process): use shlex to safely quote commands in bg_command for improved security
2026-02-27 22:50:26 -08:00
Teknium
7f423508e4
Merge pull request #151 from johnh4098/fix/shell-injection-spawn-via-env-v2
...
fix(process): escape single quotes in spawn_via_env bg_command
2026-02-27 22:49:04 -08:00
Teknium
306c6706a6
Merge pull request #150 from VencentSoliman/fix/gateway-model-personality-commands
...
fix(gateway): sync /model and /personality with CLI pattern
2026-02-27 22:48:03 -08:00
Teknium
64be67e062
Merge pull request #146 from alireza78a/fix/atomic-cron-job-save
...
fix(cron): use atomic write in save_jobs to prevent data loss
2026-02-27 22:16:43 -08:00
adavyas
0c0a2eb0a2
fix(agent): fail fast on Anthropic native base URLs
2026-02-27 21:19:29 -08:00
teknium1
de0829cec3
fix(cli): increase max iterations for child agents and extend API call timeout for improved reliability
2026-02-27 17:35:29 -08:00
Teknium
20177660bb
Merge pull request #142 from Bartok9/docs/add-slash-commands-reference
...
docs: add slash commands reference
2026-02-27 17:33:19 -08:00
Jr-kenny
609fc6d080
fix(docs): add missing code block language specifiers
2026-02-28 02:04:38 +01:00
Jr-kenny
518826e70c
fix(docs): standardize terminology and CLI formatting
2026-02-28 02:03:39 +01:00
Jr-kenny
13992a58da
fix(docs): correct CLI config precedence and paths
2026-02-28 02:00:32 +01:00
Teknium
0d2ac1c07f
Merge pull request #121 from Bartok9/test-clarify-tool
...
test(tools): add unit tests for clarify_tool.py
2026-02-27 16:27:37 -08:00
teknium1
fb7df099e0
feat(cli): add shell noise filtering and improve command execution with interactive login shell
2026-02-27 16:26:47 -08:00
teknium1
f14ff3e041
feat(cli): use user's login shell for command execution to ensure environment consistency
2026-02-27 15:10:27 -08:00
VencentSoliman
07fcb94bc0
fix(gateway): sync /model and /personality with CLI config.yaml pattern
2026-02-27 17:39:25 -05:00
aydnOktay
66d9983d46
Fix memory tool entry parsing when content contains section sign
...
- Use ENTRY_DELIMITER (\\n§\\n) instead of '§' when splitting entries in _read_file
- Prevents incorrect parsing when memory entries contain '§' character
- Aligns read logic with write logic for consistency
2026-02-28 01:33:41 +03:00
teknium1
4f3cb98e5e
feat(cli): implement platform-specific toolset selection with improved user interface
2026-02-27 14:26:23 -08:00
teknium1
8c1f5efcab
feat(cli): add toolset API key validation and improve checklist display
2026-02-27 13:56:43 -08:00
teknium1
c92bdd8785
fix(cli): improve spinner line clearing to prevent garbled output with prompt_toolkit
2026-02-27 13:49:06 -08:00