@mseep/obsidian-agent-client 0.10.6
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.
- package/.claude/hooks/gh-setup.sh +49 -0
- package/.claude/settings.json +15 -0
- package/.claude/skills/release-notes/SKILL.md +331 -0
- package/.editorconfig +10 -0
- package/.github/FUNDING.yml +2 -0
- package/.github/ISSUE_TEMPLATE/bug_report.yml +90 -0
- package/.github/ISSUE_TEMPLATE/config.yml +11 -0
- package/.github/ISSUE_TEMPLATE/feature_request.yml +59 -0
- package/.github/copilot-instructions.md +45 -0
- package/.github/pull_request_template.md +32 -0
- package/.github/workflows/ci.yaml +25 -0
- package/.github/workflows/docs.yml +58 -0
- package/.github/workflows/relay_to_openclaw.yml +59 -0
- package/.github/workflows/release.yaml +45 -0
- package/.prettierignore +10 -0
- package/.prettierrc +13 -0
- package/.vscode/extensions.json +7 -0
- package/.vscode/settings.json +37 -0
- package/.zed/settings.json +42 -0
- package/AGENTS.md +330 -0
- package/ARCHITECTURE.md +390 -0
- package/CONTRIBUTING.md +216 -0
- package/LICENSE +202 -0
- package/NOTICE +2 -0
- package/README.ja.md +121 -0
- package/README.md +125 -0
- package/docs/.vitepress/config.mts +124 -0
- package/docs/.vitepress/theme/custom.css +111 -0
- package/docs/.vitepress/theme/index.ts +4 -0
- package/docs/agent-setup/claude-code.md +84 -0
- package/docs/agent-setup/codex.md +76 -0
- package/docs/agent-setup/custom-agents.md +67 -0
- package/docs/agent-setup/gemini-cli.md +99 -0
- package/docs/agent-setup/index.md +34 -0
- package/docs/announcements/gemini-cli-deprecation.md +73 -0
- package/docs/getting-started/index.md +78 -0
- package/docs/getting-started/quick-start.md +38 -0
- package/docs/help/faq.md +181 -0
- package/docs/help/troubleshooting.md +221 -0
- package/docs/index.md +63 -0
- package/docs/public/apple-touch-icon.png +0 -0
- package/docs/public/demo.mp4 +0 -0
- package/docs/public/favicon-16x16.png +0 -0
- package/docs/public/favicon-32x32.png +0 -0
- package/docs/public/favicon.ico +0 -0
- package/docs/public/images/editing.webp +0 -0
- package/docs/public/images/export.webp +0 -0
- package/docs/public/images/floating-chat-button.webp +0 -0
- package/docs/public/images/floating-chat-instance-menu.webp +0 -0
- package/docs/public/images/floating-chat-view.webp +0 -0
- package/docs/public/images/mode-selection.webp +0 -0
- package/docs/public/images/model-selection.webp +0 -0
- package/docs/public/images/multi-session.webp +0 -0
- package/docs/public/images/remove-image.webp +0 -0
- package/docs/public/images/ribbon-icon.webp +0 -0
- package/docs/public/images/selection-context.gif +0 -0
- package/docs/public/images/sending-images.webp +0 -0
- package/docs/public/images/sending-messages.webp +0 -0
- package/docs/public/images/session-history-button.webp +0 -0
- package/docs/public/images/slash-commands-1.webp +0 -0
- package/docs/public/images/slash-commands-2.webp +0 -0
- package/docs/public/images/switch-agent.webp +0 -0
- package/docs/public/images/switch-default-agent.webp +0 -0
- package/docs/public/images/temporary-disable.gif +0 -0
- package/docs/reference/acp-support.md +110 -0
- package/docs/usage/chat-export.md +80 -0
- package/docs/usage/commands.md +51 -0
- package/docs/usage/context-files.md +57 -0
- package/docs/usage/editing.md +69 -0
- package/docs/usage/floating-chat.md +84 -0
- package/docs/usage/index.md +97 -0
- package/docs/usage/mcp-tools.md +33 -0
- package/docs/usage/mentions.md +70 -0
- package/docs/usage/mode-selection.md +28 -0
- package/docs/usage/model-selection.md +32 -0
- package/docs/usage/multi-session.md +68 -0
- package/docs/usage/sending-images.md +64 -0
- package/docs/usage/session-history.md +91 -0
- package/docs/usage/slash-commands.md +44 -0
- package/esbuild.config.mjs +49 -0
- package/eslint.config.mjs +25 -0
- package/main.js +228 -0
- package/manifest.json +11 -0
- package/package.json +52 -0
- package/src/acp/acp-client.ts +921 -0
- package/src/acp/acp-handler.ts +252 -0
- package/src/acp/permission-handler.ts +282 -0
- package/src/acp/terminal-handler.ts +264 -0
- package/src/acp/type-converter.ts +272 -0
- package/src/hooks/useAgent.ts +250 -0
- package/src/hooks/useAgentMessages.ts +470 -0
- package/src/hooks/useAgentSession.ts +544 -0
- package/src/hooks/useChatActions.ts +400 -0
- package/src/hooks/useHistoryModal.ts +219 -0
- package/src/hooks/useSessionHistory.ts +863 -0
- package/src/hooks/useSettings.ts +19 -0
- package/src/hooks/useSuggestions.ts +342 -0
- package/src/main.ts +9 -0
- package/src/plugin.ts +1126 -0
- package/src/services/chat-exporter.ts +552 -0
- package/src/services/message-sender.ts +755 -0
- package/src/services/message-state.ts +375 -0
- package/src/services/session-helpers.ts +211 -0
- package/src/services/session-state.ts +130 -0
- package/src/services/session-storage.ts +267 -0
- package/src/services/settings-normalizer.ts +255 -0
- package/src/services/settings-service.ts +285 -0
- package/src/services/update-checker.ts +128 -0
- package/src/services/vault-service.ts +558 -0
- package/src/services/view-registry.ts +345 -0
- package/src/types/agent.ts +92 -0
- package/src/types/chat.ts +351 -0
- package/src/types/errors.ts +136 -0
- package/src/types/obsidian-internals.d.ts +14 -0
- package/src/types/session.ts +731 -0
- package/src/ui/ChangeDirectoryModal.ts +137 -0
- package/src/ui/ChatContext.ts +25 -0
- package/src/ui/ChatHeader.tsx +295 -0
- package/src/ui/ChatPanel.tsx +1162 -0
- package/src/ui/ChatView.tsx +348 -0
- package/src/ui/ErrorBanner.tsx +104 -0
- package/src/ui/FloatingButton.tsx +351 -0
- package/src/ui/FloatingChatView.tsx +531 -0
- package/src/ui/InputArea.tsx +1107 -0
- package/src/ui/InputToolbar.tsx +371 -0
- package/src/ui/MessageBubble.tsx +442 -0
- package/src/ui/MessageList.tsx +265 -0
- package/src/ui/PermissionBanner.tsx +61 -0
- package/src/ui/SessionHistoryModal.tsx +821 -0
- package/src/ui/SettingsTab.ts +1337 -0
- package/src/ui/SuggestionPopup.tsx +138 -0
- package/src/ui/TerminalBlock.tsx +107 -0
- package/src/ui/ToolCallBlock.tsx +456 -0
- package/src/ui/shared/AttachmentStrip.tsx +57 -0
- package/src/ui/shared/IconButton.tsx +55 -0
- package/src/ui/shared/MarkdownRenderer.tsx +103 -0
- package/src/ui/view-host.ts +56 -0
- package/src/utils/error-utils.ts +274 -0
- package/src/utils/logger.ts +44 -0
- package/src/utils/mention-parser.ts +129 -0
- package/src/utils/paths.ts +246 -0
- package/src/utils/platform.ts +425 -0
- package/styles.css +2322 -0
- package/tsconfig.json +18 -0
- package/version-bump.mjs +18 -0
- package/versions.json +3 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# Chat Export
|
|
2
|
+
|
|
3
|
+
Save your conversations with AI agents for future reference.
|
|
4
|
+
|
|
5
|
+
## Manual Export
|
|
6
|
+
|
|
7
|
+
Click the **export button** in the chat header to export the current conversation.
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<img src="/images/export.webp" alt="Export button in chat header" width="400" />
|
|
11
|
+
</p>
|
|
12
|
+
|
|
13
|
+
## Export Settings
|
|
14
|
+
|
|
15
|
+
Configure export options in **Settings → Agent Client → Export**:
|
|
16
|
+
|
|
17
|
+
| Setting | Description |
|
|
18
|
+
|---------|-------------|
|
|
19
|
+
| **Export folder** | Folder where chat exports will be saved (default: `Agent Client`) |
|
|
20
|
+
| **Filename** | Template for filenames. Use `{date}` and `{time}` as placeholders |
|
|
21
|
+
| **Frontmatter tag** | Tag added to exported notes (default: `agent-client`). Supports nested tags like `projects/agent-client` |
|
|
22
|
+
| **Auto-export on new chat** | Automatically export when starting a new chat |
|
|
23
|
+
| **Auto-export on close chat** | Automatically export when closing the chat view |
|
|
24
|
+
| **Open note after export** | Automatically open the exported note |
|
|
25
|
+
| **Include images** | Save images attached in messages (default: enabled) |
|
|
26
|
+
| **Image location** | Where to save images: Obsidian's attachment folder, custom folder, or embed as Base64 |
|
|
27
|
+
| **Custom image folder** | Folder path for images when using custom location |
|
|
28
|
+
|
|
29
|
+
## Export Format
|
|
30
|
+
|
|
31
|
+
Chats are exported as Markdown files with YAML frontmatter:
|
|
32
|
+
|
|
33
|
+
```markdown
|
|
34
|
+
---
|
|
35
|
+
created: 2025-12-13T00:31:12
|
|
36
|
+
agentDisplayName: Claude Code
|
|
37
|
+
agentId: claude-agent-acp
|
|
38
|
+
session_id: f95b4847-cb9c-441a-9f0b-08eb243ff5dd
|
|
39
|
+
tags: [agent-client] # Customizable in settings
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
# Claude Code
|
|
43
|
+
|
|
44
|
+
## 0:31:12 - User
|
|
45
|
+
|
|
46
|
+
@[[Agent Client Plugin]]
|
|
47
|
+
Summarize this, please.
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
## 0:31:16 - Assistant
|
|
53
|
+
|
|
54
|
+
### 🔧 Read File
|
|
55
|
+
|
|
56
|
+
**Locations**: `/Users/rait09/Documents/dev_vault/Agent Client Plugin.md:0`
|
|
57
|
+
|
|
58
|
+
**Status**: completed
|
|
59
|
+
|
|
60
|
+
## Summary: Agent Client Plugin for Obsidian
|
|
61
|
+
|
|
62
|
+
This is an Obsidian plugin that integrates AI coding agents (Claude Code, Codex, Gemini CLI) directly into your vault.
|
|
63
|
+
...
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## What Gets Exported
|
|
67
|
+
|
|
68
|
+
- **Messages**: Full conversation history with timestamps
|
|
69
|
+
- **Images**: Attached images (saved as files or embedded, based on settings)
|
|
70
|
+
- **Tool calls**: Tool name, locations, status, and diffs
|
|
71
|
+
- **Thinking**: Agent's reasoning (as collapsible callouts)
|
|
72
|
+
- **Plans**: Task plans with status indicators
|
|
73
|
+
- **Note mentions**: Auto-mention and manual mentions in `@[[note]]` format
|
|
74
|
+
|
|
75
|
+
## Use Cases
|
|
76
|
+
|
|
77
|
+
- **Documentation**: Keep records of conversations and decisions
|
|
78
|
+
- **Learning**: Review agent explanations later
|
|
79
|
+
- **Sharing**: Share solutions with others
|
|
80
|
+
- **Debugging**: Reference what the agent did for troubleshooting
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
# Commands & Hotkeys
|
|
2
|
+
|
|
3
|
+
All commands available in Agent Client. Open the command palette (`Cmd/Ctrl + P`) to access them, or assign keyboard shortcuts in **Settings → Hotkeys**.
|
|
4
|
+
|
|
5
|
+
::: tip
|
|
6
|
+
Commands operate on the **last focused chat view**. Click on a chat view to focus it before running a command.
|
|
7
|
+
:::
|
|
8
|
+
|
|
9
|
+
## Chat Commands
|
|
10
|
+
|
|
11
|
+
| Command | Description |
|
|
12
|
+
|---------|-------------|
|
|
13
|
+
| **Open chat view** | Open the chat panel |
|
|
14
|
+
| **Open new chat view** | Open an additional chat view |
|
|
15
|
+
| **New chat** | Start a fresh conversation |
|
|
16
|
+
| **Cancel current message** | Stop the agent's current response |
|
|
17
|
+
| **Export chat** | Export the current conversation to a note |
|
|
18
|
+
| **Toggle auto-mention** | Toggle auto-mention of the active note |
|
|
19
|
+
| **Approve active permission** | Approve the current permission request |
|
|
20
|
+
| **Reject active permission** | Reject the current permission request |
|
|
21
|
+
| **Focus next chat view** | Move focus to the next chat view |
|
|
22
|
+
| **Focus previous chat view** | Move focus to the previous chat view |
|
|
23
|
+
|
|
24
|
+
## Broadcast Commands
|
|
25
|
+
|
|
26
|
+
Control multiple chat views at once. See [Multi-Session Chat](/usage/multi-session) for details.
|
|
27
|
+
|
|
28
|
+
| Command | Description |
|
|
29
|
+
|---------|-------------|
|
|
30
|
+
| **Broadcast prompt** | Copy the active view's input to all other views |
|
|
31
|
+
| **Broadcast send** | Send messages in all views simultaneously |
|
|
32
|
+
| **Broadcast cancel** | Cancel operations in all views |
|
|
33
|
+
|
|
34
|
+
## Floating Chat Commands
|
|
35
|
+
|
|
36
|
+
| Command | Description |
|
|
37
|
+
|---------|-------------|
|
|
38
|
+
| **Open floating chat view** | Open an existing floating window, or create one if none exist |
|
|
39
|
+
| **Open new floating chat view** | Always create a new floating window |
|
|
40
|
+
| **Minimize floating chat view** | Hide the focused floating window (session is preserved) |
|
|
41
|
+
| **Close floating chat view** | Close the focused floating window and end the session |
|
|
42
|
+
|
|
43
|
+
## Agent Commands
|
|
44
|
+
|
|
45
|
+
| Command | Description |
|
|
46
|
+
|---------|-------------|
|
|
47
|
+
| **Switch agent to [Agent Name]** | Switch to a specific agent in the last active view |
|
|
48
|
+
|
|
49
|
+
::: tip
|
|
50
|
+
Agent-specific commands are generated automatically based on your configured agents.
|
|
51
|
+
:::
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# Context Files
|
|
2
|
+
|
|
3
|
+
Provide additional context to your AI agent using context files.
|
|
4
|
+
|
|
5
|
+
## What are Context Files?
|
|
6
|
+
|
|
7
|
+
Context files are special Markdown files that contain instructions, preferences, or information that the agent should know about. These files are automatically read by the agent at the start of a session.
|
|
8
|
+
|
|
9
|
+
::: tip
|
|
10
|
+
Context files are an agent feature, not a plugin feature. Refer to your agent's documentation for details.
|
|
11
|
+
:::
|
|
12
|
+
|
|
13
|
+
## Supported Context Files
|
|
14
|
+
|
|
15
|
+
Each agent uses its own context file:
|
|
16
|
+
|
|
17
|
+
| Agent | Context File |
|
|
18
|
+
|-------|--------------|
|
|
19
|
+
| Claude Code | `CLAUDE.md` |
|
|
20
|
+
| Codex | `AGENTS.md` |
|
|
21
|
+
| Gemini CLI | `GEMINI.md` |
|
|
22
|
+
|
|
23
|
+
Place the context file in your **vault root** to have the agent read it automatically.
|
|
24
|
+
|
|
25
|
+
## Example
|
|
26
|
+
|
|
27
|
+
```markdown
|
|
28
|
+
# Vault Context
|
|
29
|
+
|
|
30
|
+
## Overview
|
|
31
|
+
This vault contains my personal notes and research.
|
|
32
|
+
|
|
33
|
+
## Preferences
|
|
34
|
+
- Write in a concise, clear style
|
|
35
|
+
- Use bullet points for lists
|
|
36
|
+
- Prefer Markdown formatting
|
|
37
|
+
|
|
38
|
+
## Important Notes
|
|
39
|
+
- `Templates/` - Note templates
|
|
40
|
+
- `Daily/` - Daily notes
|
|
41
|
+
|
|
42
|
+
## Conventions
|
|
43
|
+
- Use YYYY-MM-DD format for dates
|
|
44
|
+
- Tag notes with relevant topics
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Best Practices
|
|
48
|
+
|
|
49
|
+
1. **Keep it focused**: Include only relevant information
|
|
50
|
+
2. **Update regularly**: Keep context current with your vault
|
|
51
|
+
3. **Be specific**: Provide concrete examples and preferences
|
|
52
|
+
|
|
53
|
+
## What to Avoid
|
|
54
|
+
|
|
55
|
+
- Sensitive information (API keys, passwords)
|
|
56
|
+
- Very long files (agents have context limits)
|
|
57
|
+
- Outdated information
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# Editing
|
|
2
|
+
|
|
3
|
+
Agent Client allows AI agents to edit files in your vault and working directory.
|
|
4
|
+
|
|
5
|
+
## How Editing Works
|
|
6
|
+
|
|
7
|
+
When you ask the agent to modify files:
|
|
8
|
+
|
|
9
|
+
1. The agent proposes changes
|
|
10
|
+
2. You see the proposed edits in the chat
|
|
11
|
+
3. The agent may request permission to apply changes
|
|
12
|
+
4. Changes are applied to your files
|
|
13
|
+
|
|
14
|
+
<p align="center">
|
|
15
|
+
<img src="/images/editing.webp" alt="Editing files with agents" width="400" />
|
|
16
|
+
</p>
|
|
17
|
+
|
|
18
|
+
## Permission Controls
|
|
19
|
+
|
|
20
|
+
Some agents request permission before performing certain actions. When a permission request appears:
|
|
21
|
+
|
|
22
|
+
1. Review the proposed action
|
|
23
|
+
2. Select one of the available options provided by the agent
|
|
24
|
+
|
|
25
|
+
::: tip
|
|
26
|
+
Permission options vary by agent. Some agents may not request permission at all and edit files directly.
|
|
27
|
+
:::
|
|
28
|
+
|
|
29
|
+
### Auto-Allow Permissions
|
|
30
|
+
|
|
31
|
+
In **Settings → Agent Client → Permissions → Auto-allow permissions**, you can automatically allow all permission requests from agents.
|
|
32
|
+
|
|
33
|
+
::: warning
|
|
34
|
+
Use with caution—this gives agents full access to your system without confirmation prompts.
|
|
35
|
+
:::
|
|
36
|
+
|
|
37
|
+
## Viewing Changes
|
|
38
|
+
|
|
39
|
+
The chat displays file changes with:
|
|
40
|
+
|
|
41
|
+
- **File path**: Which file was modified
|
|
42
|
+
- **Diff view**: What was added/removed (when available)
|
|
43
|
+
- **Status**: Success or failure of the operation
|
|
44
|
+
|
|
45
|
+
### Auto-Collapse Long Diffs
|
|
46
|
+
|
|
47
|
+
Large diffs can be automatically collapsed to keep the chat readable. This feature is **disabled by default**.
|
|
48
|
+
|
|
49
|
+
| Setting | Default | Description |
|
|
50
|
+
|---------|---------|-------------|
|
|
51
|
+
| **Auto-collapse long diffs** | Off | Enable automatic collapsing of large diffs |
|
|
52
|
+
| **Collapse threshold** | 10 lines | Diffs exceeding this line count are collapsed |
|
|
53
|
+
|
|
54
|
+
Configure these in **Settings → Agent Client → Display**.
|
|
55
|
+
|
|
56
|
+
Collapsed diffs can be expanded by clicking on them.
|
|
57
|
+
|
|
58
|
+
## Best Practices
|
|
59
|
+
|
|
60
|
+
1. **Use version control**: Keep your vault in Git before letting agents edit
|
|
61
|
+
2. **Review changes**: Check diffs before confirming major modifications
|
|
62
|
+
3. **Start small**: Test with minor edits before complex changes
|
|
63
|
+
|
|
64
|
+
## Undo Changes
|
|
65
|
+
|
|
66
|
+
If an agent makes unwanted changes:
|
|
67
|
+
|
|
68
|
+
- Use **Editor**: Cmd/Ctrl+Z in the affected file
|
|
69
|
+
- Use **Git**: `git checkout -- <file>` or `git restore <file>` (if your vault is version-controlled)
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Floating Chat
|
|
2
|
+
|
|
3
|
+
A persistent, draggable chat window that floats over your workspace. Perfect for quick conversations without leaving your current view.
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="/images/floating-chat-view.webp" alt="Floating chat window open over the editor" />
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
The Floating Chat provides a lightweight alternative to the sidebar chat view:
|
|
12
|
+
|
|
13
|
+
- **Draggable window** — move it anywhere on screen
|
|
14
|
+
- **Resizable** — drag the edges to adjust size
|
|
15
|
+
- **Collapsible** — hide the window without losing your session
|
|
16
|
+
- **Multi-window** — open multiple floating windows simultaneously
|
|
17
|
+
- **Independent sessions** — each window runs its own agent session
|
|
18
|
+
|
|
19
|
+
::: tip
|
|
20
|
+
Enable the floating chat in **Settings → Agent Client → Floating chat → Enable floating chat**.
|
|
21
|
+
:::
|
|
22
|
+
|
|
23
|
+
## Getting Started
|
|
24
|
+
|
|
25
|
+
1. Enable **Enable floating chat** in settings
|
|
26
|
+
2. A floating button appears in the bottom-right corner
|
|
27
|
+
3. Click the button to open a chat window
|
|
28
|
+
4. Start chatting — the window works just like the sidebar chat
|
|
29
|
+
|
|
30
|
+
<p align="center">
|
|
31
|
+
<img src="/images/floating-chat-button.webp" alt="Floating button in the bottom-right corner" width="200" />
|
|
32
|
+
</p>
|
|
33
|
+
|
|
34
|
+
## Moving and Resizing
|
|
35
|
+
|
|
36
|
+
- **Drag** the header bar to move the window
|
|
37
|
+
- **Resize** by dragging the bottom-right corner of the window
|
|
38
|
+
- Position and size are saved automatically
|
|
39
|
+
|
|
40
|
+
## Multiple Windows
|
|
41
|
+
|
|
42
|
+
Open more than one floating chat window to run parallel conversations.
|
|
43
|
+
|
|
44
|
+
### Opening Additional Windows
|
|
45
|
+
|
|
46
|
+
- Click **"Open new view"** from the **⋮** (More) menu in the floating window header
|
|
47
|
+
- Or use the command **"Open new floating chat view"** from the command palette
|
|
48
|
+
|
|
49
|
+
### Switching Between Windows
|
|
50
|
+
|
|
51
|
+
When multiple windows exist, clicking the floating button shows an instance menu:
|
|
52
|
+
|
|
53
|
+
<p align="center">
|
|
54
|
+
<img src="/images/floating-chat-instance-menu.webp" alt="Instance menu with multiple sessions listed" width="300" />
|
|
55
|
+
</p>
|
|
56
|
+
|
|
57
|
+
- Click a session name to expand that window
|
|
58
|
+
- Click **×** to close a session
|
|
59
|
+
|
|
60
|
+
::: tip
|
|
61
|
+
The focused floating window is always displayed in front of other floating windows.
|
|
62
|
+
:::
|
|
63
|
+
|
|
64
|
+
## Commands
|
|
65
|
+
|
|
66
|
+
| Command | Description |
|
|
67
|
+
|---------|-------------|
|
|
68
|
+
| **Open floating chat view** | Open an existing floating window, or create one if none exist |
|
|
69
|
+
| **Open new floating chat view** | Always create a new floating window |
|
|
70
|
+
| **Minimize floating chat view** | Hide the focused floating window (session is preserved) |
|
|
71
|
+
| **Close floating chat view** | Close the focused floating window and end the session |
|
|
72
|
+
|
|
73
|
+
::: tip
|
|
74
|
+
Assign keyboard shortcuts to these commands in **Settings → Hotkeys** for quick access.
|
|
75
|
+
:::
|
|
76
|
+
|
|
77
|
+
## Configuration
|
|
78
|
+
|
|
79
|
+
Customize the floating chat in **Settings → Agent Client → Floating chat**:
|
|
80
|
+
|
|
81
|
+
| Setting | Default | Description |
|
|
82
|
+
|---------|---------|-------------|
|
|
83
|
+
| **Enable floating chat** | Off | Enable the floating chat button and draggable chat windows |
|
|
84
|
+
| **Floating button image** | Default icon | URL or vault path to a custom button image |
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Basic Usage
|
|
2
|
+
|
|
3
|
+
## Opening the Chat Panel
|
|
4
|
+
|
|
5
|
+
You can open the Agent Client chat panel in two ways:
|
|
6
|
+
|
|
7
|
+
- **Ribbon Icon**: Click the robot icon in the left ribbon
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
<img src="/images/ribbon-icon.webp" alt="Ribbon Icon" />
|
|
11
|
+
</p>
|
|
12
|
+
|
|
13
|
+
- **Command Palette**: Open the command palette (`Cmd/Ctrl + P`) and search for **"Open chat view"**
|
|
14
|
+
|
|
15
|
+
The chat panel opens in the right sidebar.
|
|
16
|
+
|
|
17
|
+
## Sending Messages
|
|
18
|
+
|
|
19
|
+
1. Type your message in the input field at the bottom
|
|
20
|
+
2. Press `Enter` or click the send button
|
|
21
|
+
3. Wait for the agent's response
|
|
22
|
+
|
|
23
|
+
<p align="center">
|
|
24
|
+
<img src="/images/sending-messages.webp" alt="Sending Messages" width="400" />
|
|
25
|
+
</p>
|
|
26
|
+
|
|
27
|
+
## Sending Images and Files
|
|
28
|
+
|
|
29
|
+
You can attach images and files to your messages by pasting or dragging and dropping.
|
|
30
|
+
|
|
31
|
+
1. **Paste**: Copy a file or image and paste (`Cmd/Ctrl + V`) in the input field
|
|
32
|
+
2. **Drag and Drop**: Drag files directly onto the input area
|
|
33
|
+
|
|
34
|
+
Attached files appear as thumbnails or file icons below the text area. Click the **×** to remove.
|
|
35
|
+
|
|
36
|
+
<p align="center">
|
|
37
|
+
<img src="/images/sending-images.webp" alt="Sending Images and Files" width="400" />
|
|
38
|
+
</p>
|
|
39
|
+
|
|
40
|
+
::: tip
|
|
41
|
+
Embedding images requires agent support. Non-image files are always sent as file path references.
|
|
42
|
+
:::
|
|
43
|
+
|
|
44
|
+
See [Sending Images and Files](/usage/sending-images) for more details.
|
|
45
|
+
|
|
46
|
+
## Switching Agents
|
|
47
|
+
|
|
48
|
+
To switch agents for the current view:
|
|
49
|
+
|
|
50
|
+
1. Click the **⋮** (ellipsis) menu in the chat header
|
|
51
|
+
2. Under **"Switch agent"**, select the agent you want to use
|
|
52
|
+
|
|
53
|
+
This is a one-time change for that view only.
|
|
54
|
+
|
|
55
|
+
<p align="center">
|
|
56
|
+
<img src="/images/switch-agent.webp" alt="Switch agent menu" width="400" />
|
|
57
|
+
</p>
|
|
58
|
+
|
|
59
|
+
::: tip
|
|
60
|
+
To change the default agent for new chat views, go to **Settings → Agent Client → Default agent**.
|
|
61
|
+
|
|
62
|
+
<img src="/images/switch-default-agent.webp" alt="Default agent setting" />
|
|
63
|
+
:::
|
|
64
|
+
|
|
65
|
+
## Multiple Chat Views
|
|
66
|
+
|
|
67
|
+
You can open multiple chat views to run independent conversations simultaneously. Each view has its own agent process and session.
|
|
68
|
+
|
|
69
|
+
See [Multi-Session Chat](/usage/multi-session) for details on:
|
|
70
|
+
- Opening multiple views
|
|
71
|
+
- Broadcast commands
|
|
72
|
+
- Focus navigation
|
|
73
|
+
|
|
74
|
+
## Floating Chat
|
|
75
|
+
|
|
76
|
+
A draggable, resizable chat window that floats over your workspace. Enable it in **Settings → Agent Client → Floating chat**.
|
|
77
|
+
|
|
78
|
+
See [Floating Chat](/usage/floating-chat) for details.
|
|
79
|
+
|
|
80
|
+
## Changing Models and Modes
|
|
81
|
+
|
|
82
|
+
Below the input field, you'll find dropdowns to:
|
|
83
|
+
|
|
84
|
+
- **Change Model**: Switch between different AI models (e.g., Sonnet, Haiku for Claude)
|
|
85
|
+
- **Change Mode**: Switch agent modes (e.g., Plan Mode)
|
|
86
|
+
|
|
87
|
+
::: tip
|
|
88
|
+
Available models and modes depend on the active agent.
|
|
89
|
+
:::
|
|
90
|
+
|
|
91
|
+
## Starting a New Chat
|
|
92
|
+
|
|
93
|
+
Click the **New Chat** button in the header to start a fresh conversation. The previous chat can optionally be exported (see Settings).
|
|
94
|
+
|
|
95
|
+
## Stopping Generation
|
|
96
|
+
|
|
97
|
+
If the agent is generating a response and you want to stop it, click the **Stop** button that appears during generation.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# MCP Tools
|
|
2
|
+
|
|
3
|
+
AI agents can use Model Context Protocol (MCP) tools to interact with external services and perform specialized tasks.
|
|
4
|
+
|
|
5
|
+
## What is MCP?
|
|
6
|
+
|
|
7
|
+
The [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) is an open standard that allows AI agents to connect to external tools and data sources.
|
|
8
|
+
|
|
9
|
+
::: tip
|
|
10
|
+
MCP support and configuration depend on the agent. Refer to your agent's documentation for details.
|
|
11
|
+
:::
|
|
12
|
+
|
|
13
|
+
## How MCP Works
|
|
14
|
+
|
|
15
|
+
When an agent uses an MCP tool:
|
|
16
|
+
|
|
17
|
+
1. The agent decides which tool to use
|
|
18
|
+
2. The tool call appears in the chat
|
|
19
|
+
3. The tool executes and returns results
|
|
20
|
+
4. The agent uses the results to continue
|
|
21
|
+
|
|
22
|
+
## Viewing Tool Calls
|
|
23
|
+
|
|
24
|
+
Tool calls are displayed in the chat with:
|
|
25
|
+
|
|
26
|
+
- **Tool name**: What tool was used
|
|
27
|
+
- **Status**: Running, completed, or failed
|
|
28
|
+
|
|
29
|
+
## Permissions
|
|
30
|
+
|
|
31
|
+
Some MCP tool calls may require your permission before executing. When a permission request appears, select one of the available options provided by the agent.
|
|
32
|
+
|
|
33
|
+
See [Editing](/usage/editing#permission-controls) for permission settings.
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# Note Mentions
|
|
2
|
+
|
|
3
|
+
Reference your Obsidian notes directly in conversations with AI agents.
|
|
4
|
+
|
|
5
|
+
## Auto-Mention Active Note
|
|
6
|
+
|
|
7
|
+
When enabled, the plugin automatically includes the currently active note in your message. This is useful when you want to discuss or work on the note you're viewing.
|
|
8
|
+
|
|
9
|
+
Enable this in **Settings → Agent Client → Mentions → Auto-mention active note**.
|
|
10
|
+
|
|
11
|
+
### How Auto-Mention Works
|
|
12
|
+
|
|
13
|
+
Unlike manual mentions, auto-mention only passes the **note's file path** to the agent—not its full content. The agent can then use its Read tool to examine the file if needed.
|
|
14
|
+
|
|
15
|
+
When auto-mention is active, a badge appears above the input field showing the current note name (e.g., `@My Note`).
|
|
16
|
+
|
|
17
|
+
### Temporary Disable
|
|
18
|
+
|
|
19
|
+
You can temporarily disable auto-mention for a single message by clicking the **×** button next to the badge. Click the **+** button to re-enable it. This toggle only affects the current message—auto-mention will be active again for subsequent messages.
|
|
20
|
+
|
|
21
|
+
<p align="center">
|
|
22
|
+
<img src="/images/temporary-disable.gif" alt="Temporarily disabling auto-mention" />
|
|
23
|
+
</p>
|
|
24
|
+
|
|
25
|
+
### Selection Context
|
|
26
|
+
|
|
27
|
+
If you select text in your note, the selected lines are passed as context to the agent. The badge will show the line range (e.g., `@My Note:5-10`), and the agent receives both the file path and the selected content.
|
|
28
|
+
|
|
29
|
+
<p align="center">
|
|
30
|
+
<img src="/images/selection-context.gif" alt="Selection context feature" />
|
|
31
|
+
</p>
|
|
32
|
+
|
|
33
|
+
## Manual Mentions
|
|
34
|
+
|
|
35
|
+
Use the `@` syntax to reference specific notes:
|
|
36
|
+
|
|
37
|
+
```
|
|
38
|
+
@[[My Note]]
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
As you type `@`, a dropdown appears with matching notes from your vault. Select a note to insert the mention.
|
|
42
|
+
|
|
43
|
+
### How Manual Mentions Work
|
|
44
|
+
|
|
45
|
+
When you send a message with manual mentions:
|
|
46
|
+
|
|
47
|
+
1. The plugin reads the content of the mentioned notes
|
|
48
|
+
2. The note content is included in the message sent to the agent
|
|
49
|
+
3. The agent can then reference, analyze, or modify the note content
|
|
50
|
+
|
|
51
|
+
## Length Limits
|
|
52
|
+
|
|
53
|
+
To prevent excessively large messages, the plugin limits the amount of content included:
|
|
54
|
+
|
|
55
|
+
| Setting | Default | Description |
|
|
56
|
+
|---------|---------|-------------|
|
|
57
|
+
| **Max note length** | 10,000 characters | Maximum characters per mentioned note |
|
|
58
|
+
| **Max selection length** | 10,000 characters | Maximum characters for text selection in auto-mention |
|
|
59
|
+
|
|
60
|
+
Configure these in **Settings → Agent Client → Mentions**.
|
|
61
|
+
|
|
62
|
+
::: tip
|
|
63
|
+
Content exceeding the limit is truncated with a note indicating the original length.
|
|
64
|
+
:::
|
|
65
|
+
|
|
66
|
+
## Tips
|
|
67
|
+
|
|
68
|
+
- Use manual mentions to include specific notes as context
|
|
69
|
+
- Mention multiple notes to give the agent a broader understanding
|
|
70
|
+
- For large notes, consider selecting the relevant portion and using auto-mention instead
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Mode Selection
|
|
2
|
+
|
|
3
|
+
Some agents support different operational modes that change how the agent behaves.
|
|
4
|
+
|
|
5
|
+
## What are Modes?
|
|
6
|
+
|
|
7
|
+
Modes are predefined configurations that alter the agent's behavior for specific tasks. For example:
|
|
8
|
+
|
|
9
|
+
- **Default Mode**: General-purpose assistance
|
|
10
|
+
- **Plan Mode**: Focus on planning and architecture before implementation
|
|
11
|
+
|
|
12
|
+
## Changing Modes
|
|
13
|
+
|
|
14
|
+
1. Open the chat panel
|
|
15
|
+
2. Look for the **mode dropdown** below the input field
|
|
16
|
+
3. Select the desired mode from the available options
|
|
17
|
+
|
|
18
|
+
<p align="center">
|
|
19
|
+
<img src="/images/mode-selection.webp" alt="Mode selection dropdown" width="400" />
|
|
20
|
+
</p>
|
|
21
|
+
|
|
22
|
+
::: tip
|
|
23
|
+
Available modes depend on the active agent. Not all agents support multiple modes.
|
|
24
|
+
:::
|
|
25
|
+
|
|
26
|
+
## Mode Persistence
|
|
27
|
+
|
|
28
|
+
The selected mode persists for the current session. Your preference is remembered across sessions.
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Model Selection
|
|
2
|
+
|
|
3
|
+
Switch between different AI models to optimize for speed, capability, or cost.
|
|
4
|
+
|
|
5
|
+
## What are Models?
|
|
6
|
+
|
|
7
|
+
Models are different versions of the AI with varying capabilities:
|
|
8
|
+
|
|
9
|
+
- **Larger models**: More capable, better reasoning, slower, higher cost
|
|
10
|
+
- **Smaller models**: Faster responses, lower cost, good for simpler tasks
|
|
11
|
+
|
|
12
|
+
## Changing Models
|
|
13
|
+
|
|
14
|
+
1. Open the chat panel
|
|
15
|
+
2. Look for the **model dropdown** below the input field
|
|
16
|
+
3. Select the desired model from the available options
|
|
17
|
+
|
|
18
|
+
<p align="center">
|
|
19
|
+
<img src="/images/model-selection.webp" alt="Model selection dropdown" width="400" />
|
|
20
|
+
</p>
|
|
21
|
+
|
|
22
|
+
::: tip
|
|
23
|
+
Available models depend on the active agent and your subscription/API plan.
|
|
24
|
+
:::
|
|
25
|
+
|
|
26
|
+
## Model Persistence
|
|
27
|
+
|
|
28
|
+
The selected model persists for the current session. Your preference is remembered across sessions.
|
|
29
|
+
|
|
30
|
+
## Cost Considerations
|
|
31
|
+
|
|
32
|
+
When using API keys, different models have different pricing. Check your provider's pricing page for current rates.
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# Multi-Session Chat
|
|
2
|
+
|
|
3
|
+
Run multiple independent agent conversations simultaneously.
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<img src="/images/multi-session.webp" alt="Multiple chat views running simultaneously" />
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
## Overview
|
|
10
|
+
|
|
11
|
+
Agent Client supports opening multiple chat views, each with its own:
|
|
12
|
+
- Independent agent process
|
|
13
|
+
- Separate session and message history
|
|
14
|
+
- Individual agent selection
|
|
15
|
+
|
|
16
|
+
::: tip
|
|
17
|
+
This is useful when you want to work with different agents side-by-side, or run parallel conversations for different tasks.
|
|
18
|
+
:::
|
|
19
|
+
|
|
20
|
+
## Opening Multiple Views
|
|
21
|
+
|
|
22
|
+
### Via Command Palette
|
|
23
|
+
|
|
24
|
+
1. Open command palette (`Cmd/Ctrl + P`)
|
|
25
|
+
2. Search for **"Open new chat view"**
|
|
26
|
+
3. A new chat view opens in your configured location
|
|
27
|
+
|
|
28
|
+
### Via Header Menu
|
|
29
|
+
|
|
30
|
+
1. Click the **⋮** (ellipsis) menu in the chat header
|
|
31
|
+
2. Select **"Open new view"**
|
|
32
|
+
|
|
33
|
+
## Chat View Location
|
|
34
|
+
|
|
35
|
+
Configure where new chat views open in **Settings → Agent Client → Display → Chat view location**:
|
|
36
|
+
|
|
37
|
+
| Location | Description |
|
|
38
|
+
|----------|-------------|
|
|
39
|
+
| **Right pane (tabs)** (default) | Opens in the right sidebar |
|
|
40
|
+
| **Editor area (tabs)** | Opens as a tab in the editor area |
|
|
41
|
+
| **Editor area (split)** | Opens in a new split pane |
|
|
42
|
+
|
|
43
|
+
## Broadcast Commands
|
|
44
|
+
|
|
45
|
+
Control multiple chat views at once from the command palette:
|
|
46
|
+
|
|
47
|
+
| Command | Description |
|
|
48
|
+
|---------|-------------|
|
|
49
|
+
| **Broadcast prompt** | Copy the active view's input text and images to all other views |
|
|
50
|
+
| **Broadcast send** | Send messages in all views simultaneously |
|
|
51
|
+
| **Broadcast cancel** | Cancel ongoing operations in all views |
|
|
52
|
+
|
|
53
|
+
::: tip
|
|
54
|
+
Broadcast commands are useful for comparing how different agents respond to the same prompt.
|
|
55
|
+
:::
|
|
56
|
+
|
|
57
|
+
## Focus Navigation
|
|
58
|
+
|
|
59
|
+
Quickly switch between chat views:
|
|
60
|
+
|
|
61
|
+
| Command | Description |
|
|
62
|
+
|---------|-------------|
|
|
63
|
+
| **Focus next chat view** | Move focus to the next chat view |
|
|
64
|
+
| **Focus previous chat view** | Move focus to the previous chat view |
|
|
65
|
+
|
|
66
|
+
::: tip
|
|
67
|
+
Assign keyboard shortcuts to these commands in **Settings → Hotkeys** for faster navigation.
|
|
68
|
+
:::
|