mirror of
https://github.com/wu736139669/hapi.git
synced 2026-08-05 06:24:37 +00:00
feat(cursor): multitask slash, autoReview mode, native worktree/add-dir (#1014)
* feat(cursor): multitask slash, autoReview mode, native worktree/add-dir Close the highest-value Cursor Agent gaps for remote HAPI: expand ACP-safe slash pass-through (/multitask, worktree, add-dir, …), add autoReview permission mode (--auto-review spawn + mid-session slash), and route Cursor New Session worktrees through agent --worktree instead of HAPI sibling trees. Fixes #1013 Co-authored-by: Cursor <cursoragent@cursor.com> * fix(cli): accept --mode autoReview for hapi cursor Align --mode parsing with CURSOR_PERMISSION_MODES so documented `hapi cursor --mode autoReview` enables Smart Auto instead of silently falling back to default. Co-authored-by: Cursor <cursoragent@cursor.com> --------- Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -65,6 +65,14 @@ describe('isPermissionModeAllowedForFlavor', () => {
|
||||
expect(isPermissionModeAllowedForFlavor('safe-yolo', 'pi')).toBe(false)
|
||||
expect(isPermissionModeAllowedForFlavor('ask', 'pi')).toBe(false)
|
||||
})
|
||||
|
||||
test("cursor includes autoReview", () => {
|
||||
expect(getPermissionModesForFlavor('cursor')).toContain('autoReview')
|
||||
expect(getPermissionModeLabel('autoReview')).toBe('Auto-review')
|
||||
expect(getPermissionModeTone('autoReview')).toBe('warning')
|
||||
expect(isPermissionModeAllowedForFlavor('autoReview', 'cursor')).toBe(true)
|
||||
expect(isPermissionModeAllowedForFlavor('autoReview', 'claude')).toBe(false)
|
||||
})
|
||||
})
|
||||
|
||||
describe('getPermissionModeLabel', () => {
|
||||
|
||||
+4
-1
@@ -37,7 +37,7 @@ export type KimiPermissionMode = typeof KIMI_PERMISSION_MODES[number]
|
||||
export const OPENCODE_PERMISSION_MODES = ['default', 'plan', 'yolo'] as const
|
||||
export type OpencodePermissionMode = typeof OPENCODE_PERMISSION_MODES[number]
|
||||
|
||||
export const CURSOR_PERMISSION_MODES = ['default', 'plan', 'ask', 'debug', 'yolo'] as const
|
||||
export const CURSOR_PERMISSION_MODES = ['default', 'plan', 'ask', 'debug', 'autoReview', 'yolo'] as const
|
||||
export type CursorPermissionMode = typeof CURSOR_PERMISSION_MODES[number]
|
||||
|
||||
export const PERMISSION_MODES = [
|
||||
@@ -48,6 +48,7 @@ export const PERMISSION_MODES = [
|
||||
'plan',
|
||||
'ask',
|
||||
'debug',
|
||||
'autoReview',
|
||||
'read-only',
|
||||
'safe-yolo',
|
||||
'yolo'
|
||||
@@ -62,6 +63,7 @@ export const PERMISSION_MODE_LABELS: Record<PermissionMode, string> = {
|
||||
plan: 'Plan Mode',
|
||||
ask: 'Ask Mode',
|
||||
debug: 'Debug Mode',
|
||||
autoReview: 'Auto-review',
|
||||
bypassPermissions: 'Yolo',
|
||||
'read-only': 'Read Only',
|
||||
'safe-yolo': 'Safe Yolo',
|
||||
@@ -77,6 +79,7 @@ export const PERMISSION_MODE_TONES: Record<PermissionMode, PermissionModeTone> =
|
||||
plan: 'info',
|
||||
ask: 'info',
|
||||
debug: 'info',
|
||||
autoReview: 'warning',
|
||||
bypassPermissions: 'danger',
|
||||
'read-only': 'warning',
|
||||
'safe-yolo': 'warning',
|
||||
|
||||
Reference in New Issue
Block a user