First version

This commit is contained in:
2026-08-11 12:38:02 -03:00
parent 42e875d866
commit 89d1a06204
37 changed files with 5660 additions and 4 deletions
+240 -3
View File
@@ -1,8 +1,245 @@
{
"identifier": "unsupervised.claudenova",
"name": "claude-nova",
"name": "Claude",
"organization": "Unsupervised",
"description": "Lorem ipsum, dolor sit amet.",
"description": "Claude Code in Nova — a chat sidebar, a live transcript, and tool approvals you review in the editor.",
"version": "1.0",
"categories": []
"min_runtime": "10",
"categories": ["sidebars", "commands"],
"license": "MIT",
"repository": "https://git.unsupervised.studio/Unsupervised/claude-nova",
"bugs": "https://git.unsupervised.studio/Unsupervised/claude-nova/issues",
"main": "main.js",
"entitlements": {
"process": true,
"filesystem": "readwrite",
"clipboard": true
},
"commands": {
"extensions": [
{"title": "Ask Claude…", "command": "claudenova.ask", "shortcut": "cmd-shift-l"},
{"title": "Plan with Claude…", "command": "claudenova.plan", "shortcut": "cmd-shift-p"},
{"title": "Add Files to Context…", "command": "claudenova.addFiles"},
{"title": "Show Transcript", "command": "claudenova.showTranscript"},
{"separator": true},
{"title": "New Session", "command": "claudenova.newSession"},
{"title": "Resume Session…", "command": "claudenova.resumeSession"},
{"title": "Stop Claude", "command": "claudenova.interrupt"},
{"title": "End Session", "command": "claudenova.endSession"},
{"separator": true},
{"title": "Set Model…", "command": "claudenova.setModel"},
{"title": "Set Permission Mode…", "command": "claudenova.setPermissionMode"},
{"separator": true},
{"title": "Sign In…", "command": "claudenova.signIn"},
{"title": "Sign Out", "command": "claudenova.signOut"},
{"title": "Show Account Status", "command": "claudenova.authStatus"},
{"title": "Set API Key…", "command": "claudenova.setApiKey"},
{"title": "Clear Stored API Key", "command": "claudenova.clearApiKey"}
],
"editor": [
{"title": "Ask Claude About Selection…", "command": "claudenova.askAboutSelection", "shortcut": "cmd-ctrl-l"},
{"title": "Add File to Claude's Context", "command": "claudenova.addFileContext"}
]
},
"config": [
{
"key": "claudenova.binaryPath",
"title": "Claude Code executable",
"description": "Path to the `claude` executable. Leave blank to search PATH and the standard install locations.",
"type": "path",
"placeholder": "claude"
},
{
"key": "claudenova.model",
"title": "Model",
"description": "Model alias passed to Claude Code. “Default” uses whatever your Claude Code settings specify.",
"type": "enum",
"values": [
["", "Default"],
["opus", "Opus"],
["sonnet", "Sonnet"],
["haiku", "Haiku"],
["fable", "Fable"]
],
"default": ""
},
{
"key": "claudenova.effort",
"title": "Effort",
"description": "How much thinking and exploration Claude does per turn.",
"type": "enum",
"values": [
["", "Default"],
["low", "Low"],
["medium", "Medium"],
["high", "High"],
["xhigh", "Extra High"],
["max", "Max"]
],
"default": ""
},
{
"key": "claudenova.permissionMode",
"title": "Permission mode",
"description": "How tool use is approved. “Manual” asks you before every tool that needs permission.",
"type": "enum",
"values": [
["manual", "Manual — ask before each tool"],
["acceptEdits", "Accept Edits — auto-approve file edits"],
["plan", "Plan — research only, no changes"],
["auto", "Auto — Claude decides what needs asking"],
["bypassPermissions", "Bypass — approve everything (dangerous)"]
],
"default": "manual"
},
{
"key": "claudenova.reviewEdits",
"title": "Reviewing file changes",
"description": "How Claude's edits are presented when they need approval.",
"type": "enum",
"values": [
["editor", "Open the proposed file — save to apply, close to reject"],
["panel", "Ask in a panel, with the diff on request"]
],
"default": "editor"
},
{
"key": "claudenova.openTranscript",
"title": "Open the transcript automatically",
"description": "Open the transcript tab when a session starts.",
"type": "boolean",
"default": true
},
{
"key": "claudenova.streamPartial",
"title": "Stream text as it is generated",
"description": "Show Claude's reply token by token instead of message by message.",
"type": "boolean",
"default": true
},
{
"key": "claudenova.showThinking",
"title": "Show thinking in the transcript",
"type": "boolean",
"default": true
},
{
"key": "claudenova.includeSelection",
"title": "Include the editor selection with prompts",
"description": "When text is selected, send the file, line range, and selected text along with your question.",
"type": "boolean",
"default": true
},
{
"key": "claudenova.extraArgs",
"title": "Additional CLI arguments",
"description": "Space-separated arguments appended to the `claude` command line. For advanced use.",
"type": "string",
"placeholder": "--add-dir ../shared"
}
],
"configWorkspace": [
{
"key": "claudenova.model",
"title": "Model",
"type": "enum",
"values": [
["", "Inherit from global settings"],
["opus", "Opus"],
["sonnet", "Sonnet"],
["haiku", "Haiku"],
["fable", "Fable"]
],
"default": ""
},
{
"key": "claudenova.permissionMode",
"title": "Permission mode",
"type": "enum",
"values": [
["", "Inherit from global settings"],
["manual", "Manual — ask before each tool"],
["acceptEdits", "Accept Edits — auto-approve file edits"],
["plan", "Plan — research only, no changes"],
["auto", "Auto — Claude decides what needs asking"],
["bypassPermissions", "Bypass — approve everything (dangerous)"]
],
"default": ""
}
],
"sidebars": [
{
"id": "claude",
"name": "Claude",
"smallImage": "claude-small",
"largeImage": "claude-large",
"sections": [
{
"id": "claude.session",
"name": "Session",
"allowMultiple": false,
"placeholderText": "No session yet.\nPress New Session to start one.",
"placeholderImage": "claude-placeholder",
"headerCommands": [
{"title": "Ask Claude", "image": "__builtin.action", "tooltip": "Ask Claude…", "command": "claudenova.ask"},
{"title": "New Session", "image": "__builtin.add", "tooltip": "Start a new session", "command": "claudenova.newSession"},
{"title": "Refresh", "image": "__builtin.refresh", "tooltip": "Refresh account status", "command": "claudenova.refreshStatus"}
],
"contextCommands": [
{"title": "Set Model…", "command": "claudenova.setModel"},
{"title": "Set Permission Mode…", "command": "claudenova.setPermissionMode"},
{"separator": true},
{"title": "Stop Claude", "command": "claudenova.interrupt"},
{"title": "End Session", "command": "claudenova.endSession"}
]
},
{
"id": "claude.approvals",
"name": "Needs Approval",
"allowMultiple": false,
"placeholderText": "Nothing waiting on you.",
"placeholderImage": "claude-placeholder",
"contextCommands": [
{"title": "Choose", "command": "claudenova.approvalAction", "when": "viewItem == 'approval-action'"},
{"title": "Review…", "command": "claudenova.reviewApproval", "when": "viewItem == 'approval'"},
{"title": "Allow", "command": "claudenova.allowApproval", "when": "viewItem == 'approval'"},
{"title": "Allow for This Session", "command": "claudenova.allowApprovalAlways", "when": "viewItem == 'approval'"},
{"title": "Deny", "command": "claudenova.denyApproval", "when": "viewItem == 'approval'"}
]
},
{
"id": "claude.activity",
"name": "Activity",
"allowMultiple": false,
"placeholderText": "Claude's tool use shows up here.",
"headerCommands": [
{"title": "Show Transcript", "image": "__builtin.path", "tooltip": "Show the transcript", "command": "claudenova.showTranscript"}
],
"contextCommands": [
{"title": "Open File", "command": "claudenova.openActivityFile", "when": "viewItem == 'activity-file'"},
{"title": "Copy Details", "command": "claudenova.copyActivity"}
]
},
{
"id": "claude.changes",
"name": "Changed Files",
"allowMultiple": true,
"placeholderText": "Files Claude edits appear here.",
"contextCommands": [
{"title": "Open File", "command": "claudenova.openChangedFile"},
{"title": "Show Change…", "command": "claudenova.showChangeDiff"},
{"separator": true},
{"title": "Clear List", "command": "claudenova.clearChanges"}
]
}
]
}
]
}