Skip to content

paste images with ctrl+v - #26

Merged
adamdotdevin merged 2 commits into
anomalyco:devfrom
PhantomReactor:ctrlv
May 16, 2025
Merged

paste images with ctrl+v#26
adamdotdevin merged 2 commits into
anomalyco:devfrom
PhantomReactor:ctrlv

Conversation

@PhantomReactor

Copy link
Copy Markdown
Contributor

No description provided.

@adamdotdevin
adamdotdevin merged commit ba416e7 into anomalyco:devMay 16, 2025
burgercrisis added a commit to burgercrisis/opencode that referenced this pull request Jan 8, 2026
…d dank
Windows Command Execution Fixes:
- Add detectCommandShell() and parseCommand() functions for shell detection
- Implement direct PowerShell execution bypassing cmd.exe wrapper
- Add shell built-ins detection and needsShellExecution function
- Fix stream draining to prevent race conditions (Promise.all)
- Remove duplicate abort listeners
Edit Tool Improvements:
- Add newString validation guard (handles undefined/null/empty)
- Add UnicodeNormalizedReplacer for smart quotes and em-dashes
- Fix multi-line pattern matching with empty lines (Issue anomalyco#26)
- Add unique match identification for replaceFirst functionality
- Improve block anchor matching with variable gap handling
Documentation:
- Add verified-fixes-summary.md documenting all fixed issues
- Add windows-command-execution-issues.md comprehensive analysis
- Add linux-unix-mac-compatibility-analysis.md for cross-platform impact
Fixes: Issues anomalyco#2, anomalyco#3, anomalyco#4, anomalyco#5, anomalyco#7, anomalyco#8, anomalyco#9, anomalyco#15, anomalyco#19, anomalyco#26
randomm referenced this pull request in randomm/opencode Jan 9, 2026
…ns (#26)
BREAKING CHANGE: Replaces dual-container setup with unified container
Merges opencode_sandbox and opencode_with_ssh into single unified container accessible via both docker exec (Mac) and SSH (iPhone).
Major improvements:
- Single container with dual access (docker exec + SSH)
- Persistent screen sessions shared between devices
- Smart helper script (scripts/opencode) auto-attaches or creates
- GitHub CLI available from all access methods
- Docker socket access for MCP servers
- Dynamic Docker GID detection (cross-platform compatible)
- Robust screen session initialization (no race conditions)
Components added:
- Dockerfile.opencode-unified (merged features from both old Dockerfiles)
- docker-compose.yml (unified compose with Tailscale sidecar)
- entrypoint-unified.sh (SSH daemon + gh auth + screen session)
- scripts/opencode (smart launcher with attach logic)
- .screenrc (persistent session config)
- docs/session-management.md (usage guide)
- MIGRATION.md (upgrade guide)
- tests/test_unified_container.bats (test suite)
Review process:
- Initial review: 7 issues found (3 critical, 4 major)
- Fixes applied in f1a7b7d
- Re-review: All issues verified fixed, APPROVED
Closes#25
xywsxp pushed a commit to xywsxp/opencode that referenced this pull request Apr 24, 2026
bussard76 pushed a commit to bussard76/openwork that referenced this pull request May 12, 2026
avion23 pushed a commit to avion23/opencode that referenced this pull request Jun 10, 2026
danzeroum referenced this pull request in danzeroum/opencode Jun 16, 2026
PR #26: the request side of the Anthropic protocol — pure logic, fully tested
against the cassettes' recorded request bodies, no new deps.
- opencode-llm: the Protocol trait gains `Body` + `build_body`; new normalized
request model LlmRequest / Message / Role / ContentPart / ToolDefinition /
ToolChoice / Generation (core subset).
- anthropic-messages: lowers LlmRequest → the Anthropic Messages body — system
text blocks; user/assistant/tool messages → content blocks (text, tool_use,
tool_result); tools; tool_choice (auto→auto, required→any, tool→{type,name},
none→omitted); max_tokens (default 4096); temperature/top_p/top_k/stop.
- Parity proven against streams-text + streams-tool-call request.body (model,
system, messages, tools, tool_choice, max_tokens, temperature), plus an
assistant-tool_use + tool_result lowering test and tool_choice mapping.
Deferred to the transport PR: reqwest/SSE transport (re-adds TLS rustls+ring,
owner-approved; needs a cargo-deny allow entry for ring) + the executor
(retry/backoff + redaction). No public cutover.
Verified: build/clippy -D warnings/fmt/test (llm 9) and openapi-diff all green.
No new external crates.
https://claude.ai/code/session_017Lo2jkGdTgRvsPG6tcwEqz
@xiivthx

Copy link
Copy Markdown

Shipped in v0.8.0. Removed nested card framing from itinerary table; workspace uses available screen.

zoulukuang added a commit to zoulukuang/deskfox that referenced this pull request Aug 14, 2026
…-toolkit]
自动化原理上做不到的 10 条收成 `MANUAL-CHECKLIST.md`,每条给出前置/步骤/通过判据/
失败记什么,并**必须写明「机器为什么做不到」** —— 否则下次会有人重复写一版跑不通的脚本。
单列第二节「本可自动化但本轮未覆盖」8 条(anomalyco#16 面板矩阵 / anomalyco#22 终端 / anomalyco#26 聊天引用 /
anomalyco#27 md 内链拦截,以及只验了入口没验效果的 anomalyco#59anomalyco#62anomalyco#63anomalyco#55)。
它们**不是「验过了」而是「还没验」**,混进人工单里会被误当成没问题,故显式分开。
更正 anomalyco#12:总清单原文写「崩溃/无响应恢复对话框 —— 出现且按钮可用」,
但 renderer-crash-guard.ts 的实现是**静默自愈**(120s 内第二次可数崩溃 → 隔离 .dat 快照 →
reload,单次崩溃只记日志),根本没有对话框。同 anomalyco#21 / anomalyco#48,属条目本身写错,就地更正并注明源码依据。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wut6R6htBzR8fBN8gbJkWg
zoulukuang added a commit to zoulukuang/deskfox that referenced this pull request Aug 14, 2026
人工验收单第二节列的 8 条「本可自动化但未覆盖」全部补成脚本,现状:
第 2 组 7/7、第 3 组 16 通过 2 跳过、第 4 组 11/11、第 5~7 组 11 通过 2 跳过,**待处理 0**。
剩下的跳过项都是真的做不了(分享需逐次授权;飞书绑定/群消息需真实外部账号)。
## 新覆盖的条目
- **anomalyco#16 面板开关矩阵**:树/审查/终端 **8 种组合全跑**,每种都验不遮挡不溢出。
价值最高的一条 —— `flex-row-reverse` 当初复发正是因为只测了「文件树+聊天」一种组合。
- **anomalyco#22 终端**:开/新建/关,判据是终端实例数真的变。
- **anomalyco#26 聊天引用**:选中 → 右键 → 添加到聊天窗口 → **再点浮层里的「加入聊天」** →
卡片入输入区 → 点卡片不开空白预览页。
- **anomalyco#27 md 内链拦截**:内链跳转在应用内完成,且**没有浏览器被拉起**。
- **anomalyco#59 主题**:真切一次 Fox Blue —— `data-theme` onedarkpro → fox-blue,
`--surface-base-active` `#e2e4e7` → **`#7295c452`**(正是清单要求的值),验完切回。
- **anomalyco#62 MCP**:真执行 ⌘; 开关一次并复位。
- **anomalyco#63**:如实报「只有一个本地服务器,无从切换」;workspace 切换由 anomalyco#19/anomalyco#18 覆盖。
- **anomalyco#55 飞书页**:开关翻转 + **落盘复核** + 复位。
## 被实测推翻的「想当然」(这一批)
- **审查不是独立面板,是中栏的一个 tab**(`[data-component="session-review"]` 从不出现)。
按名字猜选择器,anomalyco#16 里这一档永远开不起来,矩阵只能跑 4/8。
- **终端判据不能带 `canvas`**:PDF/xlsx 预览也是 canvas,导致「没开终端」也被判成开着。
- **标签条会横向溢出**:被挤出可见区的 tab **仍能报出几何坐标**,照着点会落到别处 ——
实撞点在会话标题上、**误触发了内联重命名**。坐标取得到 ≠ 那个位置真属于它。
故 `open_readme` 一律走文件树节点。
- **「添加到聊天窗口」只是第一步**,它先弹提问浮层,要再点「加入聊天」才真入聊天。
停在第一步找不到卡片,曾被记成「引用功能没生效」。
- **`data-theme` 是主题 id,命令面板显示的是主题名**(`onedarkpro` vs「One Dark Pro」)。
拿 id 去搜命令必然搜不到 —— 复位连续失败,**界面被留在 Fox Blue 两次**。
改为从主题定义文件读 id→名 映射,并轮询等主题真的生效。
- **搜索词与匹配词必须一致**:搜「使用主题:X」却取首个候选,点中的未必是 X。
- **持久化判据要具体到键+值**:第一版猜关键词 `caffeinate`,而真实键是
`preventSleepConfig`(store-keys.ts),「落盘可见」恒为 False —— 等于这条根本没验到,
只是没报错而已。
- **anomalyco#27 别拿「前台应用是谁」当判据**:探针自己的 osascript 就会打乱前台(实撞拿到 'Finder')。
改看有没有浏览器进程被拉起。
- **anomalyco#30 撤销要有东西可撤**:会话状态随前面条目漂移,多次 13→13→13 不是撤销坏了,
是没有可撤销的东西。改为先用 shell 造一条再验。
所有改全局状态的条目(主题 / 语言 / 权限自动接受 / 防休眠 / MCP)跑完都复位并复核。
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Wut6R6htBzR8fBN8gbJkWg
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@PhantomReactor@xiivthx@adamdotdevin