deft-console 0.11.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- deft_console-0.11.1/.gitignore +25 -0
- deft_console-0.11.1/.python-version +1 -0
- deft_console-0.11.1/AI_POLICY.md +6 -0
- deft_console-0.11.1/CHANGELOG.md +572 -0
- deft_console-0.11.1/CONTRIBUTING.md +8 -0
- deft_console-0.11.1/LICENSE +11 -0
- deft_console-0.11.1/Makefile +27 -0
- deft_console-0.11.1/PKG-INFO +255 -0
- deft_console-0.11.1/README.md +206 -0
- deft_console-0.11.1/docs/state-machines.md +188 -0
- deft_console-0.11.1/hatch_build.py +32 -0
- deft_console-0.11.1/notes.md +23 -0
- deft_console-0.11.1/pyproject.toml +100 -0
- deft_console-0.11.1/scripts/vendor.py +98 -0
- deft_console-0.11.1/src/deft_console/__init__.py +38 -0
- deft_console-0.11.1/src/deft_console/__main__.py +4 -0
- deft_console-0.11.1/src/deft_console/_loop.py +86 -0
- deft_console-0.11.1/src/deft_console/_path_fuzzy_search.py +48 -0
- deft_console-0.11.1/src/deft_console/_path_match.py +141 -0
- deft_console-0.11.1/src/deft_console/_vendor/VENDORED.md +9 -0
- deft_console-0.11.1/src/deft_console/_vendor/__init__.py +1 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/LICENSE +21 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/__init__.py +12 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/__main__.py +229 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/_diacritics.py +43 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/frames.py +176 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/halfblock.py +34 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/iterm2.py +18 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/kitty.py +215 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/live.py +238 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/probe.py +396 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/sixel.py +68 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/terminal_facts.py +308 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/terminal_facts.source +1 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/terminals.toml +159 -0
- deft_console-0.11.1/src/deft_console/_vendor/pixcell/textual.py +787 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/LICENSE +21 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/__init__.py +375 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/__main__.py +6 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/claude_hook.py +265 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/cli.py +670 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/diagnostics.py +41 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/graph/__init__.py +4 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/graph/model.py +203 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/graph/shapes.py +23 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/ingest.py +226 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/layout/__init__.py +3 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/layout/coordinates.py +51 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/layout/grid.py +270 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/layout/layers.py +508 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/layout/placement.py +411 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/layout/subgraphs.py +184 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/markdown.py +103 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/__init__.py +0 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/blockdiagram.py +30 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/classdiagram.py +47 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/erdiagram.py +41 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/gantt.py +101 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/gitgraph.py +31 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/journey.py +24 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/kanban.py +23 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/mindmap.py +23 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/packet.py +22 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/piechart.py +18 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/quadrant.py +24 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/sequence.py +66 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/timeline.py +23 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/treemap.py +28 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/model/xychart.py +24 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/output/__init__.py +0 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/output/rich.py +275 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/output/styled.py +66 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/output/widget.py +46 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/__init__.py +4 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/architecture.py +332 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/blockdiagram.py +316 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/classdiagram.py +255 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/erdiagram.py +247 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/flowchart.py +871 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/gantt.py +250 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/gitgraph.py +340 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/journey.py +74 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/kanban.py +80 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/mindmap.py +81 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/packet.py +70 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/piechart.py +67 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/quadrant.py +67 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/sequence.py +250 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/statediagram.py +245 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/timeline.py +68 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/tokens.py +53 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/treemap.py +67 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/parser/xychart.py +143 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/partial.py +150 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/py.typed +0 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/__init__.py +3 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/blockdiagram.py +476 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/canvas.py +366 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/charset.py +193 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/classdiagram.py +854 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/draw.py +829 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/erdiagram.py +600 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/gantt.py +315 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/gitgraph.py +425 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/journey.py +185 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/kanban.py +139 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/mindmap.py +295 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/packet.py +200 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/piechart.py +122 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/quadrant.py +147 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/relation_tracks.py +31 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/sequence.py +986 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/shapes/__init__.py +461 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/themes.py +179 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/timeline.py +67 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/treemap.py +245 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/renderer/xychart.py +381 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/routing/__init__.py +3 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/routing/pathfinder.py +197 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/routing/router.py +1206 -0
- deft_console-0.11.1/src/deft_console/_vendor/termaid/utils.py +246 -0
- deft_console-0.11.1/src/deft_console/about.py +93 -0
- deft_console-0.11.1/src/deft_console/acp/agent.py +1802 -0
- deft_console-0.11.1/src/deft_console/acp/api.py +123 -0
- deft_console-0.11.1/src/deft_console/acp/display.py +147 -0
- deft_console-0.11.1/src/deft_console/acp/encode_tool_call_id.py +12 -0
- deft_console-0.11.1/src/deft_console/acp/extensions/__init__.py +48 -0
- deft_console-0.11.1/src/deft_console/acp/extensions/deft.py +107 -0
- deft_console-0.11.1/src/deft_console/acp/extensions/xai.py +377 -0
- deft_console-0.11.1/src/deft_console/acp/messages.py +400 -0
- deft_console-0.11.1/src/deft_console/acp/prompt.py +82 -0
- deft_console-0.11.1/src/deft_console/acp/protocol.py +575 -0
- deft_console-0.11.1/src/deft_console/activity.py +211 -0
- deft_console-0.11.1/src/deft_console/activity_history.py +112 -0
- deft_console-0.11.1/src/deft_console/agent.py +130 -0
- deft_console-0.11.1/src/deft_console/agent_actions.py +68 -0
- deft_console-0.11.1/src/deft_console/agent_process.py +121 -0
- deft_console-0.11.1/src/deft_console/agent_schema.py +80 -0
- deft_console-0.11.1/src/deft_console/agents.py +120 -0
- deft_console-0.11.1/src/deft_console/ansi/__init__.py +1 -0
- deft_console-0.11.1/src/deft_console/ansi/_ansi.py +1876 -0
- deft_console-0.11.1/src/deft_console/ansi/_ansi_colors.py +264 -0
- deft_console-0.11.1/src/deft_console/ansi/_control_codes.py +37 -0
- deft_console-0.11.1/src/deft_console/ansi/_keys.py +251 -0
- deft_console-0.11.1/src/deft_console/ansi/_sgr_styles.py +64 -0
- deft_console-0.11.1/src/deft_console/ansi/_stream_parser.py +348 -0
- deft_console-0.11.1/src/deft_console/answer.py +24 -0
- deft_console-0.11.1/src/deft_console/app.py +1094 -0
- deft_console-0.11.1/src/deft_console/atomic.py +37 -0
- deft_console-0.11.1/src/deft_console/branding.py +29 -0
- deft_console-0.11.1/src/deft_console/browser/__init__.py +0 -0
- deft_console-0.11.1/src/deft_console/browser/cdp.py +389 -0
- deft_console-0.11.1/src/deft_console/browser/content.py +96 -0
- deft_console-0.11.1/src/deft_console/browser/install.py +187 -0
- deft_console-0.11.1/src/deft_console/browser/keys.py +50 -0
- deft_console-0.11.1/src/deft_console/browser/policy.py +78 -0
- deft_console-0.11.1/src/deft_console/browser/view.py +991 -0
- deft_console-0.11.1/src/deft_console/caret.py +57 -0
- deft_console-0.11.1/src/deft_console/cli.py +378 -0
- deft_console-0.11.1/src/deft_console/code_analyze.py +27 -0
- deft_console-0.11.1/src/deft_console/complete.py +38 -0
- deft_console-0.11.1/src/deft_console/constants.py +58 -0
- deft_console-0.11.1/src/deft_console/conversation_markdown.py +358 -0
- deft_console-0.11.1/src/deft_console/danger.py +372 -0
- deft_console-0.11.1/src/deft_console/data/agents/ampcode.com.toml +55 -0
- deft_console-0.11.1/src/deft_console/data/agents/augmentcode.com.toml +44 -0
- deft_console-0.11.1/src/deft_console/data/agents/claude-bridge.deftco.toml +40 -0
- deft_console-0.11.1/src/deft_console/data/agents/claude.com.toml +44 -0
- deft_console-0.11.1/src/deft_console/data/agents/claude.deftco.toml +52 -0
- deft_console-0.11.1/src/deft_console/data/agents/copilot.github.com.toml +29 -0
- deft_console-0.11.1/src/deft_console/data/agents/crowai.dev.toml +36 -0
- deft_console-0.11.1/src/deft_console/data/agents/cursor.com.toml +39 -0
- deft_console-0.11.1/src/deft_console/data/agents/deepagents.langchain.com.toml +32 -0
- deft_console-0.11.1/src/deft_console/data/agents/demo.deftco.toml +42 -0
- deft_console-0.11.1/src/deft_console/data/agents/docker.com.toml +60 -0
- deft_console-0.11.1/src/deft_console/data/agents/geminicli.com.toml +28 -0
- deft_console-0.11.1/src/deft_console/data/agents/goose.ai.toml +56 -0
- deft_console-0.11.1/src/deft_console/data/agents/grok.x.ai.toml +37 -0
- deft_console-0.11.1/src/deft_console/data/agents/inference.huggingface.co.toml +41 -0
- deft_console-0.11.1/src/deft_console/data/agents/kimi.com.toml +44 -0
- deft_console-0.11.1/src/deft_console/data/agents/kiro.dev.toml +43 -0
- deft_console-0.11.1/src/deft_console/data/agents/openai.com.toml +55 -0
- deft_console-0.11.1/src/deft_console/data/agents/openclaw.ai.toml +37 -0
- deft_console-0.11.1/src/deft_console/data/agents/opencode.ai.toml +39 -0
- deft_console-0.11.1/src/deft_console/data/agents/openhands.dev.toml +49 -0
- deft_console-0.11.1/src/deft_console/data/agents/pi.dev.toml +50 -0
- deft_console-0.11.1/src/deft_console/data/agents/prime.deftco.toml +51 -0
- deft_console-0.11.1/src/deft_console/data/agents/sabal.deftco.toml +49 -0
- deft_console-0.11.1/src/deft_console/data/agents/stakpak.dev.toml +62 -0
- deft_console-0.11.1/src/deft_console/data/agents/vibe.mistral.ai.toml +35 -0
- deft_console-0.11.1/src/deft_console/data/agents/vtcode.dev.toml +67 -0
- deft_console-0.11.1/src/deft_console/data/images/frog.png +0 -0
- deft_console-0.11.1/src/deft_console/data/sounds/question.wav +0 -0
- deft_console-0.11.1/src/deft_console/data/sounds/turn-over.wav +0 -0
- deft_console-0.11.1/src/deft_console/db.py +236 -0
- deft_console-0.11.1/src/deft_console/dec.py +332 -0
- deft_console-0.11.1/src/deft_console/deft_console.tcss +384 -0
- deft_console-0.11.1/src/deft_console/demo_agent/__init__.py +29 -0
- deft_console-0.11.1/src/deft_console/demo_agent/__main__.py +6 -0
- deft_console-0.11.1/src/deft_console/demo_agent/agent.py +387 -0
- deft_console-0.11.1/src/deft_console/demo_agent/connection.py +97 -0
- deft_console-0.11.1/src/deft_console/demo_agent/content.py +455 -0
- deft_console-0.11.1/src/deft_console/demo_agent/context.py +248 -0
- deft_console-0.11.1/src/deft_console/demo_agent/demos.py +748 -0
- deft_console-0.11.1/src/deft_console/demo_agent/mcp_client.py +66 -0
- deft_console-0.11.1/src/deft_console/demo_agent/registry.py +123 -0
- deft_console-0.11.1/src/deft_console/demo_agent/tutorial.py +301 -0
- deft_console-0.11.1/src/deft_console/directory.py +234 -0
- deft_console-0.11.1/src/deft_console/directory_suggester.py +93 -0
- deft_console-0.11.1/src/deft_console/directory_watcher.py +214 -0
- deft_console-0.11.1/src/deft_console/display_mcp.py +349 -0
- deft_console-0.11.1/src/deft_console/doing.py +90 -0
- deft_console-0.11.1/src/deft_console/format_path.py +25 -0
- deft_console-0.11.1/src/deft_console/fuzzy.py +140 -0
- deft_console-0.11.1/src/deft_console/fuzzy_index.py +275 -0
- deft_console-0.11.1/src/deft_console/gist.py +33 -0
- deft_console-0.11.1/src/deft_console/history.py +138 -0
- deft_console-0.11.1/src/deft_console/images.py +534 -0
- deft_console-0.11.1/src/deft_console/jsonrpc.py +587 -0
- deft_console-0.11.1/src/deft_console/markdown_append.py +32 -0
- deft_console-0.11.1/src/deft_console/menus.py +14 -0
- deft_console-0.11.1/src/deft_console/mermaid.py +132 -0
- deft_console-0.11.1/src/deft_console/mermaid_image.py +306 -0
- deft_console-0.11.1/src/deft_console/messages.py +166 -0
- deft_console-0.11.1/src/deft_console/node_runtime.py +215 -0
- deft_console-0.11.1/src/deft_console/option_content.py +51 -0
- deft_console-0.11.1/src/deft_console/os.py +0 -0
- deft_console-0.11.1/src/deft_console/page_preview.py +154 -0
- deft_console-0.11.1/src/deft_console/page_shot.py +168 -0
- deft_console-0.11.1/src/deft_console/pane_cli.py +238 -0
- deft_console-0.11.1/src/deft_console/panes/__init__.py +81 -0
- deft_console-0.11.1/src/deft_console/panes/actions.py +208 -0
- deft_console-0.11.1/src/deft_console/panes/api/__init__.py +5 -0
- deft_console-0.11.1/src/deft_console/panes/api/client.py +115 -0
- deft_console-0.11.1/src/deft_console/panes/api/running.py +95 -0
- deft_console-0.11.1/src/deft_console/panes/api/server.py +228 -0
- deft_console-0.11.1/src/deft_console/panes/content.py +134 -0
- deft_console-0.11.1/src/deft_console/panes/events.py +145 -0
- deft_console-0.11.1/src/deft_console/panes/manager.py +543 -0
- deft_console-0.11.1/src/deft_console/panes/model.py +337 -0
- deft_console-0.11.1/src/deft_console/panes/textual/__init__.py +503 -0
- deft_console-0.11.1/src/deft_console/panes/textual/commands.py +95 -0
- deft_console-0.11.1/src/deft_console/path_complete.py +217 -0
- deft_console-0.11.1/src/deft_console/path_filter.py +157 -0
- deft_console-0.11.1/src/deft_console/paths.py +100 -0
- deft_console-0.11.1/src/deft_console/picture_content.py +95 -0
- deft_console-0.11.1/src/deft_console/pill.py +23 -0
- deft_console-0.11.1/src/deft_console/portability/__init__.py +133 -0
- deft_console-0.11.1/src/deft_console/portability/_posix.py +579 -0
- deft_console-0.11.1/src/deft_console/portability/_windows.py +652 -0
- deft_console-0.11.1/src/deft_console/program_status.py +524 -0
- deft_console-0.11.1/src/deft_console/prompt/attachments.py +188 -0
- deft_console-0.11.1/src/deft_console/prompt/extract.py +20 -0
- deft_console-0.11.1/src/deft_console/prompt/resource.py +68 -0
- deft_console-0.11.1/src/deft_console/protocol.py +28 -0
- deft_console-0.11.1/src/deft_console/screens/action_modal.py +107 -0
- deft_console-0.11.1/src/deft_console/screens/agent_modal.py +172 -0
- deft_console-0.11.1/src/deft_console/screens/agent_sessions.py +148 -0
- deft_console-0.11.1/src/deft_console/screens/ask_user_question.py +658 -0
- deft_console-0.11.1/src/deft_console/screens/command_edit_modal.py +74 -0
- deft_console-0.11.1/src/deft_console/screens/elicitation.py +535 -0
- deft_console-0.11.1/src/deft_console/screens/main.py +558 -0
- deft_console-0.11.1/src/deft_console/screens/main.tcss +688 -0
- deft_console-0.11.1/src/deft_console/screens/new_session.py +75 -0
- deft_console-0.11.1/src/deft_console/screens/permissions.py +411 -0
- deft_console-0.11.1/src/deft_console/screens/permissions.tcss +73 -0
- deft_console-0.11.1/src/deft_console/screens/session_options.py +175 -0
- deft_console-0.11.1/src/deft_console/screens/session_resume_modal.py +172 -0
- deft_console-0.11.1/src/deft_console/screens/session_resume_modal.tcss +35 -0
- deft_console-0.11.1/src/deft_console/screens/sessions.py +177 -0
- deft_console-0.11.1/src/deft_console/screens/sessions.tcss +153 -0
- deft_console-0.11.1/src/deft_console/screens/settings.py +254 -0
- deft_console-0.11.1/src/deft_console/screens/settings.tcss +101 -0
- deft_console-0.11.1/src/deft_console/screens/store.py +682 -0
- deft_console-0.11.1/src/deft_console/screens/store.tcss +272 -0
- deft_console-0.11.1/src/deft_console/screens/withdrawable.py +49 -0
- deft_console-0.11.1/src/deft_console/session_messages.py +101 -0
- deft_console-0.11.1/src/deft_console/session_tracker.py +156 -0
- deft_console-0.11.1/src/deft_console/settings.py +353 -0
- deft_console-0.11.1/src/deft_console/settings_schema.py +590 -0
- deft_console-0.11.1/src/deft_console/shell.py +291 -0
- deft_console-0.11.1/src/deft_console/shell_read.py +42 -0
- deft_console-0.11.1/src/deft_console/slash_command.py +34 -0
- deft_console-0.11.1/src/deft_console/terminal_content.py +144 -0
- deft_console-0.11.1/src/deft_console/tool_summary.py +101 -0
- deft_console-0.11.1/src/deft_console/twitter.py +38 -0
- deft_console-0.11.1/src/deft_console/vendor/pele.LICENSE +40 -0
- deft_console-0.11.1/src/deft_console/vendor/pele.VERSION +1 -0
- deft_console-0.11.1/src/deft_console/vendor/pele.global.js +150 -0
- deft_console-0.11.1/src/deft_console/version.py +81 -0
- deft_console-0.11.1/src/deft_console/visuals/columns.py +292 -0
- deft_console-0.11.1/src/deft_console/widgets/acp_content.py +50 -0
- deft_console-0.11.1/src/deft_console/widgets/activity_top.py +480 -0
- deft_console-0.11.1/src/deft_console/widgets/activity_view.py +292 -0
- deft_console-0.11.1/src/deft_console/widgets/agent_response.py +77 -0
- deft_console-0.11.1/src/deft_console/widgets/agent_thought.py +51 -0
- deft_console-0.11.1/src/deft_console/widgets/blackhole.py +322 -0
- deft_console-0.11.1/src/deft_console/widgets/check_list.py +67 -0
- deft_console-0.11.1/src/deft_console/widgets/comets.py +335 -0
- deft_console-0.11.1/src/deft_console/widgets/command_pane.py +174 -0
- deft_console-0.11.1/src/deft_console/widgets/condensed_path.py +117 -0
- deft_console-0.11.1/src/deft_console/widgets/conversation.py +3923 -0
- deft_console-0.11.1/src/deft_console/widgets/danger_warning.py +65 -0
- deft_console-0.11.1/src/deft_console/widgets/diff_view.py +59 -0
- deft_console-0.11.1/src/deft_console/widgets/directory_input.py +8 -0
- deft_console-0.11.1/src/deft_console/widgets/display_terminal.py +159 -0
- deft_console-0.11.1/src/deft_console/widgets/fence_cursor.py +59 -0
- deft_console-0.11.1/src/deft_console/widgets/flash.py +95 -0
- deft_console-0.11.1/src/deft_console/widgets/future_text.py +126 -0
- deft_console-0.11.1/src/deft_console/widgets/galaxy.py +293 -0
- deft_console-0.11.1/src/deft_console/widgets/grid_select.py +234 -0
- deft_console-0.11.1/src/deft_console/widgets/help_panel.py +13 -0
- deft_console-0.11.1/src/deft_console/widgets/highlighted_textarea.py +180 -0
- deft_console-0.11.1/src/deft_console/widgets/inline_question.py +190 -0
- deft_console-0.11.1/src/deft_console/widgets/mandelbrot.py +294 -0
- deft_console-0.11.1/src/deft_console/widgets/markdown_note.py +13 -0
- deft_console-0.11.1/src/deft_console/widgets/menu.py +147 -0
- deft_console-0.11.1/src/deft_console/widgets/moon.py +330 -0
- deft_console-0.11.1/src/deft_console/widgets/non_selectable_label.py +5 -0
- deft_console-0.11.1/src/deft_console/widgets/note.py +18 -0
- deft_console-0.11.1/src/deft_console/widgets/path_search.py +555 -0
- deft_console-0.11.1/src/deft_console/widgets/picture_pane.py +121 -0
- deft_console-0.11.1/src/deft_console/widgets/plan.py +226 -0
- deft_console-0.11.1/src/deft_console/widgets/project_directory_tree.py +90 -0
- deft_console-0.11.1/src/deft_console/widgets/prompt.py +987 -0
- deft_console-0.11.1/src/deft_console/widgets/prompt_queue.py +110 -0
- deft_console-0.11.1/src/deft_console/widgets/pulsar.py +338 -0
- deft_console-0.11.1/src/deft_console/widgets/question.py +375 -0
- deft_console-0.11.1/src/deft_console/widgets/rocket.py +477 -0
- deft_console-0.11.1/src/deft_console/widgets/session_grid_select.py +71 -0
- deft_console-0.11.1/src/deft_console/widgets/session_list.py +360 -0
- deft_console-0.11.1/src/deft_console/widgets/session_message.py +86 -0
- deft_console-0.11.1/src/deft_console/widgets/session_summary.py +130 -0
- deft_console-0.11.1/src/deft_console/widgets/session_tabs.py +184 -0
- deft_console-0.11.1/src/deft_console/widgets/shell_result.py +35 -0
- deft_console-0.11.1/src/deft_console/widgets/shell_terminal.py +50 -0
- deft_console-0.11.1/src/deft_console/widgets/side_bar.py +89 -0
- deft_console-0.11.1/src/deft_console/widgets/slash_complete.py +245 -0
- deft_console-0.11.1/src/deft_console/widgets/solarsystem.py +300 -0
- deft_console-0.11.1/src/deft_console/widgets/spark.py +106 -0
- deft_console-0.11.1/src/deft_console/widgets/starfield.py +295 -0
- deft_console-0.11.1/src/deft_console/widgets/strike_text.py +70 -0
- deft_console-0.11.1/src/deft_console/widgets/subagent_view.py +412 -0
- deft_console-0.11.1/src/deft_console/widgets/terminal.py +756 -0
- deft_console-0.11.1/src/deft_console/widgets/terminal_pane.py +153 -0
- deft_console-0.11.1/src/deft_console/widgets/terminal_tool.py +522 -0
- deft_console-0.11.1/src/deft_console/widgets/throbber.py +100 -0
- deft_console-0.11.1/src/deft_console/widgets/tool_call.py +347 -0
- deft_console-0.11.1/src/deft_console/widgets/user_input.py +24 -0
- deft_console-0.11.1/src/deft_console/widgets/version.py +5 -0
- deft_console-0.11.1/src/deft_console/widgets/welcome.py +31 -0
- deft_console-0.11.1/tests/acp_stub.py +58 -0
- deft_console-0.11.1/tests/conftest.py +192 -0
- deft_console-0.11.1/tests/fake_agent.py +859 -0
- deft_console-0.11.1/tests/test_acp_client.py +283 -0
- deft_console-0.11.1/tests/test_activity.py +45 -0
- deft_console-0.11.1/tests/test_activity_history.py +70 -0
- deft_console-0.11.1/tests/test_agent_starting_note.py +83 -0
- deft_console-0.11.1/tests/test_agent_terminal_failures.py +96 -0
- deft_console-0.11.1/tests/test_agent_terminals.py +227 -0
- deft_console-0.11.1/tests/test_ansi_insert_mode.py +27 -0
- deft_console-0.11.1/tests/test_ansi_reflow.py +29 -0
- deft_console-0.11.1/tests/test_ansi_reset.py +156 -0
- deft_console-0.11.1/tests/test_attachments.py +247 -0
- deft_console-0.11.1/tests/test_background_terminals.py +138 -0
- deft_console-0.11.1/tests/test_branding.py +53 -0
- deft_console-0.11.1/tests/test_browser.py +836 -0
- deft_console-0.11.1/tests/test_browser_content.py +134 -0
- deft_console-0.11.1/tests/test_browser_install.py +267 -0
- deft_console-0.11.1/tests/test_browser_policy.py +213 -0
- deft_console-0.11.1/tests/test_browser_real.py +104 -0
- deft_console-0.11.1/tests/test_browser_scroll.py +102 -0
- deft_console-0.11.1/tests/test_catalog_commands.py +92 -0
- deft_console-0.11.1/tests/test_claude_deft_agent.py +42 -0
- deft_console-0.11.1/tests/test_columns.py +43 -0
- deft_console-0.11.1/tests/test_dashboard.py +142 -0
- deft_console-0.11.1/tests/test_deft_tools.py +130 -0
- deft_console-0.11.1/tests/test_demo_agent.py +474 -0
- deft_console-0.11.1/tests/test_display.py +230 -0
- deft_console-0.11.1/tests/test_display_mcp.py +251 -0
- deft_console-0.11.1/tests/test_elicitation.py +336 -0
- deft_console-0.11.1/tests/test_empty_prompt.py +85 -0
- deft_console-0.11.1/tests/test_grok_extension.py +279 -0
- deft_console-0.11.1/tests/test_images.py +365 -0
- deft_console-0.11.1/tests/test_inline_questions.py +485 -0
- deft_console-0.11.1/tests/test_layout_defaults.py +23 -0
- deft_console-0.11.1/tests/test_markdown_append.py +83 -0
- deft_console-0.11.1/tests/test_mermaid.py +256 -0
- deft_console-0.11.1/tests/test_mermaid_image.py +279 -0
- deft_console-0.11.1/tests/test_new_session.py +111 -0
- deft_console-0.11.1/tests/test_node_runtime.py +239 -0
- deft_console-0.11.1/tests/test_osc_7501.py +280 -0
- deft_console-0.11.1/tests/test_page_preview.py +157 -0
- deft_console-0.11.1/tests/test_page_shot.py +190 -0
- deft_console-0.11.1/tests/test_pane_api.py +453 -0
- deft_console-0.11.1/tests/test_pane_commands.py +332 -0
- deft_console-0.11.1/tests/test_pane_host.py +210 -0
- deft_console-0.11.1/tests/test_panes.py +888 -0
- deft_console-0.11.1/tests/test_path_search.py +126 -0
- deft_console-0.11.1/tests/test_picture_panes.py +196 -0
- deft_console-0.11.1/tests/test_portability.py +744 -0
- deft_console-0.11.1/tests/test_project_watch.py +142 -0
- deft_console-0.11.1/tests/test_prompt_caret.py +135 -0
- deft_console-0.11.1/tests/test_prompt_queue.py +109 -0
- deft_console-0.11.1/tests/test_question_dialog.py +391 -0
- deft_console-0.11.1/tests/test_recommended_agents.py +37 -0
- deft_console-0.11.1/tests/test_sabal_agent.py +85 -0
- deft_console-0.11.1/tests/test_saved_layout.py +285 -0
- deft_console-0.11.1/tests/test_session_features.py +708 -0
- deft_console-0.11.1/tests/test_session_list.py +396 -0
- deft_console-0.11.1/tests/test_session_messages.py +91 -0
- deft_console-0.11.1/tests/test_session_stats.py +89 -0
- deft_console-0.11.1/tests/test_sessions_advanced.py +94 -0
- deft_console-0.11.1/tests/test_sessions_default.py +42 -0
- deft_console-0.11.1/tests/test_shell_cleanup.py +165 -0
- deft_console-0.11.1/tests/test_shell_exit_codes.py +100 -0
- deft_console-0.11.1/tests/test_shell_integration.py +319 -0
- deft_console-0.11.1/tests/test_shell_words.py +116 -0
- deft_console-0.11.1/tests/test_slash_complete.py +59 -0
- deft_console-0.11.1/tests/test_stop_agent_terminals.py +86 -0
- deft_console-0.11.1/tests/test_store_keys.py +20 -0
- deft_console-0.11.1/tests/test_subagent_timing.py +74 -0
- deft_console-0.11.1/tests/test_subagents.py +445 -0
- deft_console-0.11.1/tests/test_terminal_pane.py +245 -0
- deft_console-0.11.1/tests/test_terminal_title.py +14 -0
- deft_console-0.11.1/tests/test_terminals.py +217 -0
- deft_console-0.11.1/tests/test_thought_style.py +21 -0
- deft_console-0.11.1/tests/test_tool_summary.py +123 -0
- deft_console-0.11.1/tests/test_user_agents.py +89 -0
- deft_console-0.11.1/tests/test_wait_for_key.py +139 -0
- deft_console-0.11.1/tools/echo_client.py +58 -0
- deft_console-0.11.1/tools/make_qr.py +19 -0
- deft_console-0.11.1/tools/update_pele.py +62 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Python-generated files
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[oc]
|
|
4
|
+
build/
|
|
5
|
+
dist/
|
|
6
|
+
wheels/
|
|
7
|
+
*.egg-info
|
|
8
|
+
__pycache__
|
|
9
|
+
|
|
10
|
+
# Virtual environments
|
|
11
|
+
.venv
|
|
12
|
+
.DS_Store
|
|
13
|
+
.vscode
|
|
14
|
+
.zed
|
|
15
|
+
.git
|
|
16
|
+
.mypy_cache
|
|
17
|
+
*.github
|
|
18
|
+
*.log
|
|
19
|
+
|
|
20
|
+
uv.lock
|
|
21
|
+
agent.jsonl
|
|
22
|
+
replay.jsonl
|
|
23
|
+
sandbox/
|
|
24
|
+
|
|
25
|
+
.claude/settings.local.json
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.14.2
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# AI Policy
|
|
2
|
+
|
|
3
|
+
This project accepts AI PRs (it would by hypocritical not to), as long as the following guidelines are met:
|
|
4
|
+
|
|
5
|
+
- The Pull Request MUST fill in the repository's pull request template.
|
|
6
|
+
- The Pull Request MUST link to a issue or discussion where a solution has been approved by a maintainer (@willmcgugan).
|
|
@@ -0,0 +1,572 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## Unreleased
|
|
9
|
+
|
|
10
|
+
## [0.11.1] - 2026-11-12
|
|
11
|
+
|
|
12
|
+
### Changed
|
|
13
|
+
|
|
14
|
+
- Console's Python package is now `deft_console`, not `toad` (#184). Settings and sessions stay where they were (`~/.config/toad`).
|
|
15
|
+
- termaid and pixcell are bundled in `deft_console._vendor` instead of being installed from git, so deft-console can be installed from PyPI
|
|
16
|
+
|
|
17
|
+
## [0.11.0] - 2026-11-12
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
|
|
21
|
+
- Claude Code (Bridge): another way to run Claude, through the `deft-bridge` npm package, with live output from background commands (#133)
|
|
22
|
+
- Claude Code (Deft): Claude through Deft's build of the ACP adapter, which streams command output (#129)
|
|
23
|
+
- Sessions down the side: `ui.sessions-bar-position` puts the list left or right, f4 hides it, and a phone's width gets a ☰ menu (#156)
|
|
24
|
+
- Sessions list styles: compact, detailed and tree; drag its edge to resize it, remembered for each style (#157, #158)
|
|
25
|
+
- A sub-agent's view opens in its session's area, and the sessions tree marks the one that's open (#159, #168)
|
|
26
|
+
- Agents' questions and forms in the conversation, or as dialogs (`ui.questions`) (#135)
|
|
27
|
+
- Background terminals: commands that keep running after their turn, and say when they end (#136)
|
|
28
|
+
- Queue a prompt sent while the agent is replying, and remove it before it goes (#140)
|
|
29
|
+
- Pictures in panes: images and diagrams beside the conversation (#123)
|
|
30
|
+
- Prompt caret: a bar or underline, following the terminal's cursor; Insert switches to overwrite (#150)
|
|
31
|
+
- Read your own agent files from the config folder (#141)
|
|
32
|
+
- Stop a command the agent runs, for agents that take `_deft.co/stop_terminal` (#143)
|
|
33
|
+
- `!` commands report their exit code, so a failed one shows as failed (#167)
|
|
34
|
+
- Terminal emulator: reset on `ESC c` and `CSI ! p`, insert mode (`CSI 4 h` / `CSI 4 l`), OSC 133 prompt marks and OSC 7 working directory (#163, #164, #166)
|
|
35
|
+
- An outside API: JSON-RPC on a local socket, and `console pane` to drive a running Console's panes (#117, #118)
|
|
36
|
+
- Terminals for agents, and Console's tools as ACP calls (`deft.co/call_tool`) (#119, #121)
|
|
37
|
+
- Terminal boxes are titled by the agent's summary, with the command first inside; thinking shows in italic (#127, #128)
|
|
38
|
+
|
|
39
|
+
### Fixed
|
|
40
|
+
|
|
41
|
+
- Enter on an empty prompt no longer types `. `, and goes to an agent that asks for empty prompts (#161, #170)
|
|
42
|
+
- A broad project folder (home, a drive) no longer floods the UI with file changes (#160)
|
|
43
|
+
- Windows keeps an agent's multi-line argument (#148)
|
|
44
|
+
- Output from agent-run commands shows while they run again (#124)
|
|
45
|
+
- Races on slow machines: lost terminal output, stuck or leftover question dialogs (#137, #142, #147)
|
|
46
|
+
- Clicking an inline question or form keeps the focus on what was clicked (#154)
|
|
47
|
+
- A question form sized after its panes are gone, and a terminal title set with no screen, no longer raise (#145, #162)
|
|
48
|
+
- A tool call is copied when posted, so a later update can't change it before it's handled (#134)
|
|
49
|
+
|
|
50
|
+
## [0.8.0] - [0.10.0]
|
|
51
|
+
|
|
52
|
+
See the [GitHub releases](https://github.com/deftai/console/releases) for these versions.
|
|
53
|
+
|
|
54
|
+
## [0.7.0] - 2026-11-06
|
|
55
|
+
|
|
56
|
+
First release as Deft Console.
|
|
57
|
+
|
|
58
|
+
### Added
|
|
59
|
+
|
|
60
|
+
- Support for Grok Build's `x.ai/ask_user_question` ACP extension: a question dialog with single/multi-select, free-text "Other" answers, option previews, and plan-mode actions
|
|
61
|
+
- Support for Grok Build's `x.ai/exit_plan_mode` ACP extension: approve, keep planning, or abandon a plan
|
|
62
|
+
- Report each session's status to the terminal with OSC 7501 (Program Status Protocol), so terminals like Rex can show when an agent is working, done, or waiting on you
|
|
63
|
+
- Mermaid diagrams in Markdown (agent replies, your prompts, and tool output) are drawn as terminal art with termaid, once the code fence is complete; a block menu toggles between diagram and source
|
|
64
|
+
- Code blocks wider than the window show a horizontal scrollbar and scroll with left/right on the block cursor
|
|
65
|
+
|
|
66
|
+
### Changed
|
|
67
|
+
|
|
68
|
+
- Style tweak for compact prompt
|
|
69
|
+
- Fix for overly wide question text
|
|
70
|
+
|
|
71
|
+
## [0.6.20] - 2016-05-22
|
|
72
|
+
|
|
73
|
+
### Added
|
|
74
|
+
|
|
75
|
+
- Added Grok to store
|
|
76
|
+
|
|
77
|
+
## [0.6.19] - 2026-05-22
|
|
78
|
+
|
|
79
|
+
### Added
|
|
80
|
+
|
|
81
|
+
- Added context usage and context to status line
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
## [0.6.18] - 2026-05-17
|
|
85
|
+
|
|
86
|
+
### Fixed
|
|
87
|
+
|
|
88
|
+
- Fixed issue that affected OpenCode
|
|
89
|
+
|
|
90
|
+
## [0.6.17] - 2026-05-14
|
|
91
|
+
|
|
92
|
+
### Fixed
|
|
93
|
+
|
|
94
|
+
- Fixed issue with broken code display
|
|
95
|
+
|
|
96
|
+
## [0.6.16] - 2026-04-19
|
|
97
|
+
|
|
98
|
+
### Changed
|
|
99
|
+
|
|
100
|
+
- Added textual-diff-view, which started life here
|
|
101
|
+
|
|
102
|
+
### Added
|
|
103
|
+
|
|
104
|
+
- Added diff settings for annotations and wrapping
|
|
105
|
+
|
|
106
|
+
## [0.6.15] - 2026-04-05
|
|
107
|
+
|
|
108
|
+
### Changed
|
|
109
|
+
|
|
110
|
+
- Reduced resize lag
|
|
111
|
+
|
|
112
|
+
## [0.6.14] - 2026-03-30
|
|
113
|
+
|
|
114
|
+
### Fixed
|
|
115
|
+
|
|
116
|
+
- Fixed Claude Code ACP command
|
|
117
|
+
|
|
118
|
+
## [0.6.13] - 2026-03-30
|
|
119
|
+
|
|
120
|
+
### Fixed
|
|
121
|
+
|
|
122
|
+
- Fixed issues with auto-completing root paths
|
|
123
|
+
|
|
124
|
+
### Changed
|
|
125
|
+
|
|
126
|
+
- Updated claude acp adapter installer
|
|
127
|
+
|
|
128
|
+
## [0.6.12] - 2026-03-13
|
|
129
|
+
|
|
130
|
+
### Fixed
|
|
131
|
+
|
|
132
|
+
- Fix broken output with Typeguard dependency
|
|
133
|
+
|
|
134
|
+
## [0.6.11] - 2026-03-13
|
|
135
|
+
|
|
136
|
+
### Added
|
|
137
|
+
|
|
138
|
+
- Added prompt message to settings
|
|
139
|
+
|
|
140
|
+
## [0.6.10] - 2026-03-13
|
|
141
|
+
|
|
142
|
+
### Fixed
|
|
143
|
+
|
|
144
|
+
- Fixed for agent that send blank text update (Mistral)
|
|
145
|
+
|
|
146
|
+
## [0.6.9] - 2026-03-11
|
|
147
|
+
|
|
148
|
+
### Fixed
|
|
149
|
+
|
|
150
|
+
- Fixed tool calls not refreshing
|
|
151
|
+
- Fixed tool call ordering
|
|
152
|
+
- Fixed anchoring behavor
|
|
153
|
+
|
|
154
|
+
### Changed
|
|
155
|
+
|
|
156
|
+
- Re-enabled experimental GC management via Textual
|
|
157
|
+
- The `end` key will now scroll the conversation to the end, if the cursor is already at the end of the prompt
|
|
158
|
+
|
|
159
|
+
### Added
|
|
160
|
+
|
|
161
|
+
- Added Cursor to store
|
|
162
|
+
|
|
163
|
+
## [0.6.8] - 2026-03-03
|
|
164
|
+
|
|
165
|
+
### Fixed
|
|
166
|
+
|
|
167
|
+
- Removed gc management, due to expected memory issues
|
|
168
|
+
|
|
169
|
+
## [0.6.7] - 2026-03-02
|
|
170
|
+
|
|
171
|
+
### Fixed
|
|
172
|
+
|
|
173
|
+
- Fix for throbber crash
|
|
174
|
+
|
|
175
|
+
## [0.6.6] - 2026-03-02
|
|
176
|
+
|
|
177
|
+
### Changed
|
|
178
|
+
|
|
179
|
+
- Style tweaks for tools
|
|
180
|
+
- Some GC optimizations to smooth startup and scrolling
|
|
181
|
+
|
|
182
|
+
## [0.6.5] - 2026-02-27
|
|
183
|
+
|
|
184
|
+
### Added
|
|
185
|
+
|
|
186
|
+
- Added experimental OpenClaw support
|
|
187
|
+
|
|
188
|
+
## [0.6.4] - 2026-02-26
|
|
189
|
+
|
|
190
|
+
### Fixed
|
|
191
|
+
|
|
192
|
+
- Fixed large plans not appearing
|
|
193
|
+
|
|
194
|
+
### Changed
|
|
195
|
+
|
|
196
|
+
- Additional style tweaks, restore success color for terminal tools, tweaked margins for blocks
|
|
197
|
+
|
|
198
|
+
## [0.6.3]- 2026-02-25
|
|
199
|
+
|
|
200
|
+
### Changed
|
|
201
|
+
|
|
202
|
+
- Updated and improved style for Plans and Terminal tools
|
|
203
|
+
|
|
204
|
+
## [0.6.2]- 2026-02-24
|
|
205
|
+
|
|
206
|
+
### Changed
|
|
207
|
+
|
|
208
|
+
- Reverted a dubious style change on the store page
|
|
209
|
+
|
|
210
|
+
## [0.6.1] - 2026-02-24
|
|
211
|
+
|
|
212
|
+
### Changed
|
|
213
|
+
|
|
214
|
+
- New index for fuzzy searching makes searches faster for large repos
|
|
215
|
+
|
|
216
|
+
## [0.6.0] - 2026-02-16
|
|
217
|
+
|
|
218
|
+
### Added
|
|
219
|
+
|
|
220
|
+
- Added project directory switcher
|
|
221
|
+
- Added sessions, sessions tabs, sessions screen
|
|
222
|
+
|
|
223
|
+
### Fixed
|
|
224
|
+
|
|
225
|
+
- Fixed handling of agents that post null responses (OpenCode)
|
|
226
|
+
|
|
227
|
+
### Changed
|
|
228
|
+
|
|
229
|
+
- Added semantic styled edge to diff view
|
|
230
|
+
|
|
231
|
+
## [0.5.38] - 2026-02-01
|
|
232
|
+
|
|
233
|
+
### Fixed
|
|
234
|
+
|
|
235
|
+
- Fixed issue with agents empty thoughts breaking the block cursor
|
|
236
|
+
|
|
237
|
+
### Changed
|
|
238
|
+
|
|
239
|
+
- PathSearch and SlashCommand inputs are now overlays to avoid moving conversation content
|
|
240
|
+
|
|
241
|
+
## [0.5.37] - 2026-02-01
|
|
242
|
+
|
|
243
|
+
### Fixed
|
|
244
|
+
|
|
245
|
+
- Fixed session resume
|
|
246
|
+
|
|
247
|
+
## [0.5.36] - 2026-01-30
|
|
248
|
+
|
|
249
|
+
### Added
|
|
250
|
+
|
|
251
|
+
- Added toad.db sqlite database for non-config data
|
|
252
|
+
- Added Resume dialog (currently experimental, as agents don't yet support ACP)
|
|
253
|
+
- Added setting to disable title blink
|
|
254
|
+
|
|
255
|
+
### Fixed
|
|
256
|
+
|
|
257
|
+
- Fixed issue with empty terminal tools
|
|
258
|
+
|
|
259
|
+
## [0.5.35] - 2026-01-21
|
|
260
|
+
|
|
261
|
+
### Added
|
|
262
|
+
|
|
263
|
+
- Added GitHub CoPilot
|
|
264
|
+
|
|
265
|
+
### Changed
|
|
266
|
+
|
|
267
|
+
- The launcher hotkeys will now launch the agent immediately, and not just highlight the agent
|
|
268
|
+
|
|
269
|
+
## [0.5.34] - 2026-01-16
|
|
270
|
+
|
|
271
|
+
### Added
|
|
272
|
+
|
|
273
|
+
- Added display of slash command hints
|
|
274
|
+
- Added /toad:clear slash command
|
|
275
|
+
|
|
276
|
+
## [0.5.33] - 2026-01-16
|
|
277
|
+
|
|
278
|
+
### Fixed
|
|
279
|
+
|
|
280
|
+
- Fixed character level diff highlights
|
|
281
|
+
|
|
282
|
+
## [0.5.32] - 2026-01-15
|
|
283
|
+
|
|
284
|
+
### Fixed
|
|
285
|
+
|
|
286
|
+
- Fixed broken text form the input in commands
|
|
287
|
+
|
|
288
|
+
## [0.5.31] - 2026-01-14
|
|
289
|
+
|
|
290
|
+
### Changed
|
|
291
|
+
|
|
292
|
+
- Fix for diff highlights
|
|
293
|
+
- Minor cosmetic things
|
|
294
|
+
|
|
295
|
+
## [0.5.30] - 2026-01-14
|
|
296
|
+
|
|
297
|
+
### Fixed
|
|
298
|
+
|
|
299
|
+
- Fixed Terminals not focusing on click
|
|
300
|
+
- Fixed tool calls not rendered
|
|
301
|
+
- Fixed Kimi run command
|
|
302
|
+
- Fixed permissions screen not dispaying if "kind" is not set
|
|
303
|
+
|
|
304
|
+
### Added
|
|
305
|
+
|
|
306
|
+
- Added reporting of errors from acp initialize call
|
|
307
|
+
- Added Interrupt menu option to terminals
|
|
308
|
+
|
|
309
|
+
## [0.5.29] - 2026-01-11
|
|
310
|
+
|
|
311
|
+
### Added
|
|
312
|
+
|
|
313
|
+
- Set process title
|
|
314
|
+
- Additional help content
|
|
315
|
+
|
|
316
|
+
## [0.5.28] - 2026-01-11
|
|
317
|
+
|
|
318
|
+
### Fixed
|
|
319
|
+
|
|
320
|
+
- Fixed crash when running commands that clash with Content markup
|
|
321
|
+
|
|
322
|
+
## [0.5.27] - 2026-01-10
|
|
323
|
+
|
|
324
|
+
### Changed
|
|
325
|
+
|
|
326
|
+
- Updated Hugging Face Inference providers
|
|
327
|
+
|
|
328
|
+
## [0.5.26] - 2026-01-10
|
|
329
|
+
|
|
330
|
+
### Fixed
|
|
331
|
+
|
|
332
|
+
- Fixed issue with missing refreshes
|
|
333
|
+
|
|
334
|
+
### Added
|
|
335
|
+
|
|
336
|
+
- Added Target lines, and Additional lines, to settings
|
|
337
|
+
|
|
338
|
+
## [0.5.25] - 2026-01-09
|
|
339
|
+
|
|
340
|
+
### Added
|
|
341
|
+
|
|
342
|
+
- Added F1 key to toggle help panel
|
|
343
|
+
- Added context help to main widgets
|
|
344
|
+
|
|
345
|
+
### Changed
|
|
346
|
+
|
|
347
|
+
- Changed sidebar binding to ctrl+b
|
|
348
|
+
|
|
349
|
+
## [0.5.24] - 2026-01-08
|
|
350
|
+
|
|
351
|
+
### Added
|
|
352
|
+
|
|
353
|
+
- Added sound for permission request
|
|
354
|
+
- Added terminal title
|
|
355
|
+
- Added blinking of terminal title when asking permission
|
|
356
|
+
- Added an error message if the agent reports an internal error during its turn
|
|
357
|
+
|
|
358
|
+
## [0.5.23] - 2026-01-06
|
|
359
|
+
|
|
360
|
+
### Fixed
|
|
361
|
+
|
|
362
|
+
- A few style issue: tree background, status line padding
|
|
363
|
+
|
|
364
|
+
## [0.5.22] - 2026-01-06
|
|
365
|
+
|
|
366
|
+
### Fixed
|
|
367
|
+
|
|
368
|
+
- Fixes for settings combinations not taking effect
|
|
369
|
+
|
|
370
|
+
### Changed
|
|
371
|
+
|
|
372
|
+
- Restored prompt history
|
|
373
|
+
- The `/about` slash command has been renamed to `/toad:about`, to crate a namespace for future Toad commands
|
|
374
|
+
|
|
375
|
+
## [0.5.21] - 2026-01-05
|
|
376
|
+
|
|
377
|
+
### Changed
|
|
378
|
+
|
|
379
|
+
- Settings screen will now expand to full width when the screen is < 100 characters
|
|
380
|
+
- Sidebar will float if focused and "hide sidebar when not in use" setting is True
|
|
381
|
+
- Replace mac and linux shell settings with a single setting (you may have to update this you have changed the default)
|
|
382
|
+
|
|
383
|
+
### Fixed
|
|
384
|
+
|
|
385
|
+
- A more more defensive approach to watching directories, which may fixed stalling problem
|
|
386
|
+
|
|
387
|
+
## [0.5.20] - 2026-01-04
|
|
388
|
+
|
|
389
|
+
### Changed
|
|
390
|
+
|
|
391
|
+
- Smarter filesystem monitoring to avoid refreshes where nothing has changed
|
|
392
|
+
|
|
393
|
+
## [0.5.19] - 2026-01-04
|
|
394
|
+
|
|
395
|
+
### Added
|
|
396
|
+
|
|
397
|
+
- Added surfacing of "stop reason" from agents.
|
|
398
|
+
- Added `TOAD_LOG` env var (takes a path) to direct logs to a path.
|
|
399
|
+
|
|
400
|
+
## [0.5.18] - 2026-01-03
|
|
401
|
+
|
|
402
|
+
### Fixed
|
|
403
|
+
|
|
404
|
+
- Fixed footer setting
|
|
405
|
+
|
|
406
|
+
## [0.5.17] - 2026-01-03
|
|
407
|
+
|
|
408
|
+
### Fixed
|
|
409
|
+
|
|
410
|
+
- Fixed prompt settings not taking effect
|
|
411
|
+
- Fixed tool calls expanding but not updating the cursor
|
|
412
|
+
|
|
413
|
+
### Added
|
|
414
|
+
|
|
415
|
+
- Added atom-one-dark and atom-one-light themes
|
|
416
|
+
|
|
417
|
+
### Changed
|
|
418
|
+
|
|
419
|
+
- Allowed shell commands to be submitted prior to agent ready
|
|
420
|
+
|
|
421
|
+
## [0.5.15] - 2026-01-01
|
|
422
|
+
|
|
423
|
+
### Added
|
|
424
|
+
|
|
425
|
+
- Added pruning of very long conversations. This may be exposed in settings in the future.
|
|
426
|
+
|
|
427
|
+
### Fixed
|
|
428
|
+
|
|
429
|
+
- Fixed broken prompt with in question mode and the app blurs
|
|
430
|
+
- Fixed performance issue caused by timer
|
|
431
|
+
|
|
432
|
+
## [0.5.14] - 2025-12-31
|
|
433
|
+
|
|
434
|
+
### Added
|
|
435
|
+
|
|
436
|
+
- Added optional os notifications
|
|
437
|
+
- Added dialog to edit install commands
|
|
438
|
+
|
|
439
|
+
### Changed
|
|
440
|
+
|
|
441
|
+
- Copy to clipboard will now use system APIs if available, in addition to OSC52
|
|
442
|
+
- Implemented alternate approach to running the shell
|
|
443
|
+
|
|
444
|
+
## [0.5.13] - 2025-12-29
|
|
445
|
+
|
|
446
|
+
### Changed
|
|
447
|
+
|
|
448
|
+
- Simplified diff visuals
|
|
449
|
+
- Fixed keys in permissions screen
|
|
450
|
+
|
|
451
|
+
### Fixed
|
|
452
|
+
|
|
453
|
+
- Fixed broken shell after running terminals
|
|
454
|
+
|
|
455
|
+
## [0.5.12] - 2025-12-28
|
|
456
|
+
|
|
457
|
+
### Fixed
|
|
458
|
+
|
|
459
|
+
- Fixed eroneous suggestion on buffered input
|
|
460
|
+
|
|
461
|
+
## [0.5.11] - 2025-12-28
|
|
462
|
+
|
|
463
|
+
### Fixed
|
|
464
|
+
|
|
465
|
+
- Fixed tree picker when project path isn't cwd
|
|
466
|
+
|
|
467
|
+
## [0.5.10] - 2025-12-28
|
|
468
|
+
|
|
469
|
+
### Added
|
|
470
|
+
|
|
471
|
+
- Added a tree view to file picker
|
|
472
|
+
|
|
473
|
+
## [0.5.9] - 2025-12-27
|
|
474
|
+
|
|
475
|
+
### Changed
|
|
476
|
+
|
|
477
|
+
- Optimized directory scanning and filtering. Seems fast enough on sane sized repos. More work require for very large repos.
|
|
478
|
+
- Fixed empty tool calls with terminals
|
|
479
|
+
|
|
480
|
+
## [0.5.8] - 2025-12-26
|
|
481
|
+
|
|
482
|
+
### Fixed
|
|
483
|
+
|
|
484
|
+
- Fixed broken tool calls
|
|
485
|
+
|
|
486
|
+
## [0.5.7] - 2025-12-26
|
|
487
|
+
|
|
488
|
+
### Changes
|
|
489
|
+
|
|
490
|
+
- Cursor keys can navigate between sections in the store screen
|
|
491
|
+
- Optimized path search
|
|
492
|
+
- Disabled path search in shell mode
|
|
493
|
+
- Typing in the conversation view will auto-focus the prompt
|
|
494
|
+
|
|
495
|
+
### Added
|
|
496
|
+
|
|
497
|
+
- Added single character switches https://github.com/batrachianai/toad/pull/135
|
|
498
|
+
|
|
499
|
+
## [0.5.6] - 2025-12-24
|
|
500
|
+
|
|
501
|
+
### Fixed
|
|
502
|
+
|
|
503
|
+
- Fixed agent selector not focusing on run.
|
|
504
|
+
- Added project directory as second argument to `toad acp` rather than a switch.
|
|
505
|
+
|
|
506
|
+
## [0.5.5] - 2025-12-22
|
|
507
|
+
|
|
508
|
+
### Fixed
|
|
509
|
+
|
|
510
|
+
- Fixed column setting not taking effect
|
|
511
|
+
|
|
512
|
+
## [0.5.0] - 2025-12-18
|
|
513
|
+
|
|
514
|
+
### Added
|
|
515
|
+
|
|
516
|
+
- First release. This document will be updated for subsequent releases.
|
|
517
|
+
|
|
518
|
+
|
|
519
|
+
[0.6.20]: https://github.com/batrachianai/toad/compare/v0.6.18...v0.6.20
|
|
520
|
+
[0.6.18]: https://github.com/batrachianai/toad/compare/v0.6.17...v0.6.18
|
|
521
|
+
[0.6.17]: https://github.com/batrachianai/toad/compare/v0.6.16...v0.6.17
|
|
522
|
+
[0.6.16]: https://github.com/batrachianai/toad/compare/v0.6.15...v0.6.16
|
|
523
|
+
[0.6.15]: https://github.com/batrachianai/toad/compare/v0.6.14...v0.6.15
|
|
524
|
+
[0.6.14]: https://github.com/batrachianai/toad/compare/v0.6.13...v0.6.14
|
|
525
|
+
[0.6.13]: https://github.com/batrachianai/toad/compare/v0.6.12...v0.6.13
|
|
526
|
+
[0.6.12]: https://github.com/batrachianai/toad/compare/v0.6.11...v0.6.12
|
|
527
|
+
[0.6.11]: https://github.com/batrachianai/toad/compare/v0.6.10...v0.6.11
|
|
528
|
+
[0.6.10]: https://github.com/batrachianai/toad/compare/v0.6.9...v0.6.10
|
|
529
|
+
[0.6.9]: https://github.com/batrachianai/toad/compare/v0.6.8...v0.6.9
|
|
530
|
+
[0.6.8]: https://github.com/batrachianai/toad/compare/v0.6.7...v0.6.8
|
|
531
|
+
[0.6.7]: https://github.com/batrachianai/toad/compare/v0.6.6...v0.6.7
|
|
532
|
+
[0.6.6]: https://github.com/batrachianai/toad/compare/v0.6.5...v0.6.6
|
|
533
|
+
[0.6.5]: https://github.com/batrachianai/toad/compare/v0.6.4...v0.6.5
|
|
534
|
+
[0.6.4]: https://github.com/batrachianai/toad/compare/v0.6.3...v0.6.4
|
|
535
|
+
[0.6.3]: https://github.com/batrachianai/toad/compare/v0.6.2...v0.6.3
|
|
536
|
+
[0.6.2]: https://github.com/batrachianai/toad/compare/v0.6.1...v0.6.2
|
|
537
|
+
[0.6.1]: https://github.com/batrachianai/toad/compare/v0.6.0...v0.6.1
|
|
538
|
+
[0.6.0]: https://github.com/batrachianai/toad/compare/v0.5.38...v0.6.0
|
|
539
|
+
[0.5.38]: https://github.com/batrachianai/toad/compare/v0.5.37...v0.5.38
|
|
540
|
+
[0.5.37]: https://github.com/batrachianai/toad/compare/v0.5.36...v0.5.37
|
|
541
|
+
[0.5.36]: https://github.com/batrachianai/toad/compare/v0.5.35...v0.5.36
|
|
542
|
+
[0.5.35]: https://github.com/batrachianai/toad/compare/v0.5.34...v0.5.35
|
|
543
|
+
[0.5.34]: https://github.com/batrachianai/toad/compare/v0.5.33...v0.5.34
|
|
544
|
+
[0.5.33]: https://github.com/batrachianai/toad/compare/v0.5.32...v0.5.33
|
|
545
|
+
[0.5.32]: https://github.com/batrachianai/toad/compare/v0.5.31...v0.5.32
|
|
546
|
+
[0.5.31]: https://github.com/batrachianai/toad/compare/v0.5.30...v0.5.31
|
|
547
|
+
[0.5.30]: https://github.com/batrachianai/toad/compare/v0.5.29...v0.5.30
|
|
548
|
+
[0.5.29]: https://github.com/batrachianai/toad/compare/v0.5.28...v0.5.29
|
|
549
|
+
[0.5.28]: https://github.com/batrachianai/toad/compare/v0.5.27...v0.5.28
|
|
550
|
+
[0.5.27]: https://github.com/batrachianai/toad/compare/v0.5.26...v0.5.27
|
|
551
|
+
[0.5.26]: https://github.com/batrachianai/toad/compare/v0.5.25...v0.5.26
|
|
552
|
+
[0.5.24]: https://github.com/batrachianai/toad/compare/v0.5.23...v0.5.24
|
|
553
|
+
[0.5.23]: https://github.com/batrachianai/toad/compare/v0.5.22...v0.5.23
|
|
554
|
+
[0.5.22]: https://github.com/batrachianai/toad/compare/v0.5.21...v0.5.22
|
|
555
|
+
[0.5.21]: https://github.com/batrachianai/toad/compare/v0.5.20...v0.5.21
|
|
556
|
+
[0.5.20]: https://github.com/batrachianai/toad/compare/v0.5.19...v0.5.20
|
|
557
|
+
[0.5.19]: https://github.com/batrachianai/toad/compare/v0.5.18...v0.5.19
|
|
558
|
+
[0.5.18]: https://github.com/batrachianai/toad/compare/v0.5.17...v0.5.18
|
|
559
|
+
[0.5.17]: https://github.com/batrachianai/toad/compare/v0.5.16...v0.5.17
|
|
560
|
+
[0.5.16]: https://github.com/batrachianai/toad/compare/v0.5.15...v0.5.16
|
|
561
|
+
[0.5.15]: https://github.com/batrachianai/toad/compare/v0.5.14...v0.5.15
|
|
562
|
+
[0.5.14]: https://github.com/batrachianai/toad/compare/v0.5.13...v0.5.14
|
|
563
|
+
[0.5.13]: https://github.com/batrachianai/toad/compare/v0.5.12...v0.5.13
|
|
564
|
+
[0.5.12]: https://github.com/batrachianai/toad/compare/v0.5.11...v0.5.12
|
|
565
|
+
[0.5.11]: https://github.com/batrachianai/toad/compare/v0.5.10...v0.5.11
|
|
566
|
+
[0.5.10]: https://github.com/batrachianai/toad/compare/v0.5.9...v0.5.10
|
|
567
|
+
[0.5.9]: https://github.com/batrachianai/toad/compare/v0.5.8...v0.5.9
|
|
568
|
+
[0.5.8]: https://github.com/batrachianai/toad/compare/v0.5.7...v0.5.8
|
|
569
|
+
[0.5.7]: https://github.com/batrachianai/toad/compare/v0.5.6...v0.5.7
|
|
570
|
+
[0.5.6]: https://github.com/batrachianai/toad/compare/v0.5.5...v0.5.6
|
|
571
|
+
[0.5.5]: https://github.com/batrachianai/toad/compare/v0.5.0...v0.5.5
|
|
572
|
+
[0.5.0]: https://github.com/batrachianai/toad/releases/tag/v0.5.0
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# Guide to Contributing
|
|
2
|
+
|
|
3
|
+
Thank you for your interesting in improving Toad!
|
|
4
|
+
|
|
5
|
+
If you are thinking of fixing a bug or contributing a feature, please open a Discussion first.
|
|
6
|
+
You will be asked for a link to the discussion when you contribute a PR.
|
|
7
|
+
|
|
8
|
+
TODO: add technical help
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
Deft Console
|
|
2
|
+
Copyright (c) 2026 Deft. All rights reserved.
|
|
3
|
+
|
|
4
|
+
This software is proprietary. No part of it may be copied, modified, distributed or
|
|
5
|
+
used except as permitted in writing by Deft.
|
|
6
|
+
|
|
7
|
+
Deft Console is built on Toad, Copyright (c) Will McGugan, which Deft uses under a
|
|
8
|
+
commercial license from its author (not under the AGPL).
|
|
9
|
+
|
|
10
|
+
Third-party packages that Deft Console depends on are distributed under their own
|
|
11
|
+
licenses.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
|
|
2
|
+
run := uv run console
|
|
3
|
+
|
|
4
|
+
.PHONY: run
|
|
5
|
+
run:
|
|
6
|
+
$(run)
|
|
7
|
+
|
|
8
|
+
.PHONY: gemini-acp
|
|
9
|
+
gemini-acp:
|
|
10
|
+
$(run) acp "gemini --experimental-acp" --project-dir ~/sandbox --title "Google Gemini"
|
|
11
|
+
|
|
12
|
+
.PHONY: claude-acp
|
|
13
|
+
claude-acp:
|
|
14
|
+
$(run) acp "claude-code-acp" --project-dir ~/sandbox --title "Claude"
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
.PHONE: codex-acp
|
|
18
|
+
codex-acp:
|
|
19
|
+
$(run) acp "codex-acp" --project-dir ~/sandbox --title="OpenAI Codex"
|
|
20
|
+
|
|
21
|
+
.PHONY: replay
|
|
22
|
+
replay:
|
|
23
|
+
ACP_INITIALIZE=0 $(run) acp "$(run) replay $(realpath replay.jsonl)" --project-dir ~/sandbox
|
|
24
|
+
|
|
25
|
+
.PHONY: echo
|
|
26
|
+
echo:
|
|
27
|
+
$(run) acp "uv run echo_client.py"
|