Jiaqing Liang
27203ee5e6
refactor: plugins dir + opt-in langfuse via __getattr__ guard
...
- mv langfuse_tracing.py -> plugins/langfuse_tracing.py
- llmcore: load plugin lazily inside __getattr__ when langfuse_config present
(PEP 562 module __getattr__ naturally fires only once after globals().update)
- llmcore: extract _record_usage() from 4 scattered [Cache] print sites
- agentmain: /resume scans only latest 10 files
2026-04-20 15:56:06 +08:00
Jiaqing Liang
574308e834
docs: add GitHub badge linking to GA-Technical-Report (data & reproduction repo)
2026-04-20 12:37:17 +08:00
Jiaqing Liang
fba8b8dc0c
docs: move disclaimer to License section (less intrusive)
2026-04-20 12:19:29 +08:00
Jiaqing Liang
73e108ecb0
docs: add disclaimer about unofficial commercial sites
2026-04-20 12:17:28 +08:00
Liang Jiaqing
777c517949
refactor: update agent loop and tool extraction
2026-04-19 23:21:37 +08:00
Liang Jiaqing
5869022302
refactor: simplify HTTP error handling in _openai_stream, add non-stream support, broadcast history in MixinSession
2026-04-19 20:57:07 +08:00
LJQ
b363ca1b0f
Merge pull request #112 from shenhao-stu/main
...
feat: add /continue cmd
2026-04-19 19:15:41 +08:00
Liang Jiaqing
72e1b38877
improve /resume: use regex to extract history blocks instead of naive tail reading
2026-04-19 17:15:38 +08:00
Liang Jiaqing
ba3c5144e9
Revert "Merge pull request #108 from ggandmee-cloud/feat/cch-signing"
...
This reverts commit 3e61155b33 , reversing
changes made to 4abb8e205d .
2026-04-19 16:18:45 +08:00
LJQ
a4f4d00d33
Merge pull request #110 from shenhao-stu/main
...
update mykey_template.py and add user_agent
2026-04-19 15:40:19 +08:00
LJQ
599a1b6536
Merge pull request #108 from ggandmee-cloud/feat/cch-signing
...
feat: NativeClaudeSession 在 fake_cc_system_prompt 模式下支持可选 CCH 签名
2026-04-19 15:27:13 +08:00
Liang Jiaqing
72d462fc1a
sys_prompt_en: 去掉强制英文,跟随用户语言
2026-04-19 11:29:30 +08:00
Liang Jiaqing
638c7f5a0e
清理SOP: web_setup去TM方案, tmwebdriver排查流程优化
2026-04-19 11:16:29 +08:00
Liang Jiaqing
a96b2cd76e
update technical report
2026-04-19 10:03:32 +08:00
Liang Jiaqing
ce108ec441
update technical report: language polish and table layout improvements
2026-04-18 19:58:56 +08:00
Liang Jiaqing
84fcc9aca8
fix: increase default timeout for non-stream mode (10/240s vs 5/30s)
2026-04-18 16:45:37 +08:00
Liang Jiaqing
450edc285c
fix: get_llm_name case-insensitive match & refactor to accept optional backend param
2026-04-18 14:46:05 +08:00
Liang Jiaqing
f40eaa9cb6
fix: clarify start_long_term_update should only be called when task is completed (not mid-task)
2026-04-18 13:09:01 +08:00
Liang Jiaqing
dd5c795a83
refine memory_cleanup_sop: 4 compression principles, RULES triage, anti-intuitive trigger words, layered placement
2026-04-18 12:33:41 +08:00
Liang Jiaqing
909843e79f
refactor: move chat bubble asset to frontends/ and rename to English
2026-04-18 11:13:38 +08:00
LJQ
95b4f76fe2
Merge pull request #89 from mmgnosit-commits/fix/minimax-timeout-retry
...
fix(llmcore): 添加MiniMax超时错误码529支持重试机制
2026-04-18 10:59:16 +08:00
Liang Jiaqing
8a5f8e714e
Add technical report link to README
2026-04-18 00:13:48 +08:00
Liang Jiaqing
261cb08ba3
Add technical report PDF
2026-04-18 00:09:36 +08:00
Liang Jiaqing
9c4815f781
Add Trendshift trending badge to README
2026-04-17 21:12:34 +08:00
Jiaqing Liang
5b595e9ca5
fix: inline_eval exec() exception escaping crash; update schema description
2026-04-17 16:06:13 +08:00
Jiaqing Liang
34639c195d
refactor: extract slash cmd handler; fix inline_eval param name; support extra_sys_prompt
2026-04-17 15:39:51 +08:00
Jiaqing Liang
1bbdbeef66
refactor: omit temperature from payload when default (1), avoid errors on reasoning models
2026-04-17 13:11:57 +08:00
Liang Jiaqing
e49f73b85a
docs: add English-only CONTRIBUTING.md
2026-04-17 10:46:09 +08:00
Liang Jiaqing
51ed38c6c0
fix: clarify file_write usage — content before call
2026-04-17 00:04:12 +08:00
Liang Jiaqing
ca76daddd3
refactor: unify docstrings, add /resume command, simplify error msg
2026-04-16 21:04:04 +08:00
LJQ
cc99bebf1f
Merge pull request #80 from shenhao-stu/main
...
docs: update mykey_template.py
2026-04-16 19:52:02 +08:00
LJQ
1ffe617cbd
Merge pull request #79 from ViviqwerAsd/docs/update-wechat-group-qrcodes
...
docs: 更新微信群二维码 (group 5/6/7)
2026-04-16 19:50:42 +08:00
LJQ
5c5e6f6471
Merge pull request #78 from AspasZhang/feat/update-plan-verify-sop
...
feat: update plan_sop & verify_sop
2026-04-16 19:18:14 +08:00
Liang Jiaqing
d215765cc5
feat: add English version of global_mem_insight_template
2026-04-16 18:52:07 +08:00
Liang Jiaqing
a1d8304457
feat: i18n support - auto-detect system language for zh/en prompts
2026-04-16 18:47:40 +08:00
Liang Jiaqing
13d20c2d59
fix: compatible with Streamlit 1.56+ iframe API change
2026-04-16 17:48:58 +08:00
Liang Jiaqing
16329ffdc1
fix: empty file ZeroDivisionError in file_read; remove SiderLLMSession; init global_mem with header
2026-04-16 16:04:18 +08:00
Liang Jiaqing
29b11c4491
docs: add token efficiency highlight to Core Features (EN+CN)
2026-04-16 15:47:41 +08:00
LJQ
59c1cf9d72
Merge pull request #76 from kuishou68/fix/issue-75-scheduler-errors
...
fix: guard _parse_cooldown against malformed repeat values; close file handle with context manager
2026-04-16 13:22:48 +08:00
Liang Jiaqing
08ca6130ea
stapp: incremental freeze rendering for streaming segments
...
Replace full-redraw approach with frozen/live slot pattern:
- Completed segments are frozen into individual st.empty() slots
- Only the last (active) segment is re-rendered on each tick
- Reduces flicker and improves performance for long multi-turn conversations
2026-04-16 13:10:00 +08:00
Liang Jiaqing
ce72054a09
feat: multi code_run support, inline_eval logging & cwd fix, tool reinject upgrade
2026-04-16 12:56:17 +08:00
Liang Jiaqing
6dde231dcb
docs: add Star History chart to README
2026-04-16 07:58:48 +08:00
Liang Jiaqing
7e4d56c624
docs: use wechat_group4.jpg to bypass CDN cache
2026-04-15 23:57:11 +08:00
Liang Jiaqing
8ea0b0663a
docs: update wechat group labels (Group 4 + Group 3)
2026-04-15 23:54:57 +08:00
Liang Jiaqing
135f1dba17
fix: change desktop pet port 51983->41983 (avoid Hyper-V reserved range) & update wechat group QR code
2026-04-15 23:50:48 +08:00
Liang Jiaqing
b50083556a
docs: add Chinese illustrated getting-started guide
2026-04-15 23:22:45 +08:00
Liang Jiaqing
c5280fedb5
feat(file_read): fuzzy file suggestion on not-found with history dirs; sync L1 template
2026-04-15 20:58:29 +08:00
Liang Jiaqing
c296c76c2a
fix: batch_process missing raw_dir arg causing L4 archive to fail
2026-04-15 18:31:29 +08:00
Jiaqing Liang
731b3c7baa
feat: add plan mode (enter/exit/completion check/verification gate/periodic hints)
2026-04-15 17:02:54 +08:00
LJQ
8da711d035
Merge pull request #69 from kagura-agent/feat/github-contribution-sop
...
feat: add GitHub contribution SOP (memory/github_contribution_sop.md)
2026-04-15 15:42:22 +08:00
Jiaqing Liang
dc2abca38f
preserve history across llm switch
2026-04-15 14:34:06 +08:00
Jiaqing Liang
d0d9741319
fix prompt flow
2026-04-15 13:57:36 +08:00
Liang Jiaqing
d1e396fa09
feat: publish memory_cleanup_sop
2026-04-15 09:26:46 +08:00
LJQ
86b39f1750
Merge pull request #67 from shenhao-stu/main
...
config: update mykey_template.py with new configuration examples
2026-04-15 09:24:21 +08:00
Liang Jiaqing
d9748881f2
feat: publish ocr_utils, vision_sop, ui_detect to public repo
2026-04-15 00:00:14 +08:00
Liang Jiaqing
a7d6e24204
fix: use script_dir for cwd path instead of relative path
2026-04-14 23:38:32 +08:00
Liang Jiaqing
8502f87c81
refactor: use with statement for requests.post in NativeClaudeSession
2026-04-14 23:35:51 +08:00
Liang Jiaqing
c6d8a7abea
refactor: rename default_model->model, add thinking_type support, fix pet urlopen error handling
2026-04-14 21:14:05 +08:00
Liang Jiaqing
1b3cc81111
style: arrange 3 QR code images horizontally in a table row
2026-04-14 18:47:00 +08:00
LJQ
15c1648a27
Merge pull request #63 from JinyiHan99/docs/add-group-qr-codes
...
docs: add community group QR codes to README
2026-04-14 15:12:39 +08:00
Liang Jiaqing
424134cfe7
refactor(pet): extract PetBase, deduplicate _start_server/safe wrappers, add singleton guard
2026-04-14 12:05:55 +08:00
LJQ
33b7a35a09
Merge pull request #62 from shenhao-stu/main
...
docs: add Linuxdo links
2026-04-14 11:13:37 +08:00
Liang Jiaqing
8075d5e78b
feat: desktop pet v2 with 8 skins and state notifications
2026-04-14 11:07:58 +08:00
Liang Jiaqing
e123ab84f8
refactor: reorder mykey_template, add name field to native configs
2026-04-13 22:48:51 +08:00
Liang Jiaqing
7f02ce2e5f
feat: add /session.key=value system command to set LLM params at runtime
2026-04-13 22:44:17 +08:00
Liang Jiaqing
1d9df4ab79
refactor llm session params and thinking parsing
2026-04-13 20:20:31 +08:00
Liang Jiaqing
da66c34a4a
refactor: turn_end_callback + desktop pet + keychain
...
- agent_loop: next_prompt_patcher -> turn_end_callback with full context
- agent_loop: exit logic unified (break + callback), no early return
- ga: summary extraction moved from tool_after_callback to turn_end_callback
- ga: _turn_end_hooks support for external subscribers
- stapp: desktop pet button with HTTP status push
- keychain: XOR-masked secret storage with SecretStr
- gitignore: whitelist keychain.py
2026-04-13 18:27:17 +08:00
LJQ
ee962efbb0
docs: update README recent highlights and group image ( #59 )
...
docs: update README recent highlights and group image
2026-04-13 16:20:56 +08:00
Jiaqing Liang
64b22f5423
fix: scroll ghost height reflow via overflow toggle; extend cache markers to last 2 user msgs; simplify cursor & merge JS fixes
2026-04-13 14:59:38 +08:00
Liang Jiaqing
19704f4fc5
fix(stapp): eliminate ghost duplicate of last text block on new message
...
Root cause: stream loop emitted a bare st.empty() heartbeat per tick, accumulating
dozens of empty slots under chat_message. On the next rerun the history replay
path had no such slots, so Streamlit's incremental DOM diff misaligned and left
the previous render of the last text block as a grayed-out ghost.
Fix: unify streaming and history replay under the same shell
(slot = st.empty(); with slot.container(): render_segments(...)). Heartbeat now
re-enters the same slot each tick; when response is unchanged Streamlit's diff
is a no-op (no flicker), but the container() call still lets StopException
propagate so abort keeps working. Simplified render_segments from 5 params
(placeholders/rendered_cache/force_text) to 2 (segments, suffix).
Net: +19 -20 lines. Verified: no ghost, abort interrupts mid-stream, per-turn
fold-collapse preserved.
2026-04-12 15:22:56 +08:00
Liang Jiaqing
5aa83cfa91
fix: use local var for claude tools conversion, avoid mutating self.tools
2026-04-12 14:46:45 +08:00
Liang Jiaqing
0689e68e81
refactor: remove claude_tools_format flag, auto-convert tools in NativeClaudeSession.raw_ask
2026-04-12 14:43:46 +08:00
Liang Jiaqing
2b9ad55f23
feat: --verbose flag, lazy mykeys loading, temperature config support
...
- agentmain: add --verbose arg for subagent monitoring mode
- llmcore: lazy-load mykeys/proxies via module __getattr__
- llmcore: fix auto_make_url regex for trailing slash cases
- llmcore: support temperature override from session config
- docs: update subagent.md with --verbose usage note
2026-04-12 14:29:32 +08:00
Liang Jiaqing
4d7e87f7b8
fix: MixinSession copy before override & add no-tools warning; refine subagent SOP
2026-04-11 18:50:26 +08:00
Liang Jiaqing
15c5e427ca
refactor: rename mem_scanner→procmem_scanner, add L4 layer, remove make_prompts.py
2026-04-11 18:30:00 +08:00
Liang Jiaqing
9bf239082b
fix: comment out MixinSession copy to prevent tools not propagating to original session
2026-04-11 18:25:54 +08:00
Liang Jiaqing
31e0dfaa48
feat: task模式干预机制 _stop/_keyinfo/_intervene + consume_file
2026-04-11 17:14:35 +08:00
Liang Jiaqing
fae8c72fcf
fix: restore stop signal detection broken by render_segments cache optimization
...
- stapp.py: add st.empty() after render_segments to force Streamlit StopException check on every iteration (incl. heartbeat)
- agentmain.py: fix nround type check, fix timeout comment
2026-04-11 16:25:19 +08:00
Liang Jiaqing
5c53854000
feat: L4 session archiver + scheduler cron integration
...
- Add compress_session.py: compress raw model_responses into L4 archives
- Integrate 12h silent cron into scheduler.check() (runs before TASKS dir check)
- Whitelist compress_session.py in .gitignore (archives excluded)
- llmcore: refactor SSE warn handling, max_retries default 2->1
- scheduler: remove unused health_check(), INTERVAL 60->120
2026-04-11 15:55:35 +08:00
Liang Jiaqing
a073bddfdc
llmcore: remove runtime model param, upgrade Claude beta headers, softer backoff
2026-04-11 14:34:27 +08:00
Liang Jiaqing
973befeeca
fix: _fix_messages for Claude API compliance, raw_ask simplify, no_tool orphan fix, summary extraction improvement
2026-04-11 13:24:33 +08:00
Liang Jiaqing
8c8232edfc
cleanup: rm user.js, untrack copilot_proxy.pyw; ljqCtrl: DPI via GDI + GrabWindow(hwnd)
2026-04-10 22:17:24 +08:00
Jiaqing Liang
33af178b04
fix: handle window object serialization in CDP bridge; improve file_write error msg; minor llmcore style cleanup
2026-04-10 14:04:41 +08:00
Liang Jiaqing
bd4e7de7ac
Fix tool call conversion and working checkpoint result
2026-04-10 10:45:00 +08:00
Liang Jiaqing
86e83c1b96
fix: verbose logic & insight wording & file_read anchor skip
2026-04-10 09:56:22 +08:00
Liang Jiaqing
28c86dd97c
Update llmcore truncation, adb_ui parsing, stapp regex, and subagent docs
2026-04-09 18:43:20 +08:00
Liang Jiaqing
d7b60b0d0f
tune: read_timeout 60s, simphtml print/newTabs fix, remove obsolete iframe sop
2026-04-08 20:45:06 +08:00
Liang Jiaqing
a160a7c5d5
feat: enhance CDP bridge management and fix JS falsy returns
...
- background.js: Add management API, auto-return for JS, refactor new tab capture
- simphtml.py: Fix falsy return value bug, flatten return structure
- agent_loop.py: Simplify UI icons
- manifest.json: Add management permission
- tools_schema: Optimize prompts for web tools
- tmwebdriver_sop.md: Update documentation
2026-04-08 18:28:33 +08:00
LJQ
34c176bc1d
Merge pull request #57 from YangChen-pro/fix/restore-native-compat
...
修复 /restore 的日志路径兼容,并支持 Native 日志恢复
2026-04-08 15:45:15 +08:00
Liang Jiaqing
61a2db456b
docs: fuzzy numbers in README (3K/~100/9 tools)
2026-04-07 22:18:18 +08:00
Liang Jiaqing
b2767bdcdc
refactor: optimize non-verbose output - tool icons, compact args, clean content
2026-04-07 19:03:43 +08:00
Jiaqing Liang
344c0c0656
fix: popup.js action->cmd; add disable_dialogs.js with toast; update manifest
2026-04-07 12:17:18 +08:00
Liang Jiaqing
c952ed4a9b
fix: hoist filter should not catch sticky elements or oversized containers
...
- Remove position:sticky from hoist criteria (sticky is scroll-following, not popup)
- Add cover < 1.0 upper bound (real dialogs do not exceed viewport area)
2026-04-07 10:17:55 +08:00
Liang Jiaqing
6c8e7d4e55
simphtml: elementFromPoint弹窗修复 + findMainList评分优化 + _ljq ID注入 + smart_truncate重写
2026-04-07 10:10:27 +08:00
Liang Jiaqing
532223a8ce
Optimize: force aggressive tag compression before history truncation to save context
2026-04-06 22:50:23 +08:00
Liang Jiaqing
6f63ebf6be
Refactor: simplify smart_format to string-only and enhance tool output truncation limits
2026-04-06 22:50:23 +08:00
LJQ
56e3d93282
Merge pull request #55 from JinyiHan99/update-wechat-group-image
...
Update wechat_group.jpg
2026-04-06 21:57:09 +08:00
Liang Jiaqing
f593c1be15
smart truncation, iframe preservation, streamlit filter
...
- simphtml: truncate_biggest replaces naive string cut, targets fattest content block via 70% drill-down
- simphtml: iframe children preserved through div proxy (bypass BS4 limitation)
- background/content.js: filter streamlit tabs and skip content script injection
- ga.py: file_content tag regex allows attributes; maxchars 38k->35k
2026-04-06 12:19:20 +08:00
Liang Jiaqing
014917610e
NativeClaudeSession: auto-convert OpenAI tools format to Claude; skip in NativeOAISession
2026-04-04 07:03:18 +08:00
Liang Jiaqing
239516d3e1
refactor: move tools ownership from NativeToolClient to Session layer
...
- tools state now held by Session (NativeClaudeSession.tools)
- MixinSession.__setattr__ broadcasts tools/system to all sub-sessions
- NativeToolClient no longer duplicates tools storage
- fix: use type(s) is instead of isinstance to avoid catching NativeOAISession subclass
2026-04-03 23:05:28 +08:00