122 lines
2.8 KiB
TypeScript
122 lines
2.8 KiB
TypeScript
import { KNOWN_SLASH_COMMANDS } from '@shared/utils/slashCommands';
|
|
|
|
import type { TeamProviderId } from '@shared/types';
|
|
import type { KnownSlashCommandDefinition } from '@shared/utils/slashCommands';
|
|
|
|
const CODEX_SLASH_COMMAND_SUGGESTIONS: readonly KnownSlashCommandDefinition[] = [
|
|
{
|
|
name: 'model',
|
|
command: '/model',
|
|
description: 'Choose the active model for this session.',
|
|
},
|
|
{
|
|
name: 'fast',
|
|
command: '/fast',
|
|
description: 'Toggle Fast mode on or off.',
|
|
},
|
|
{
|
|
name: 'permissions',
|
|
command: '/permissions',
|
|
description: 'Adjust approval requirements for tools and commands.',
|
|
},
|
|
{
|
|
name: 'plan',
|
|
command: '/plan',
|
|
description: 'Switch to plan mode with an optional prompt.',
|
|
},
|
|
{
|
|
name: 'review',
|
|
command: '/review',
|
|
description: 'Ask Codex to review the current working tree.',
|
|
},
|
|
{
|
|
name: 'diff',
|
|
command: '/diff',
|
|
description: 'Show the current Git diff, including untracked files.',
|
|
},
|
|
{
|
|
name: 'status',
|
|
command: '/status',
|
|
description: 'Show session configuration and token usage.',
|
|
},
|
|
{
|
|
name: 'mcp',
|
|
command: '/mcp',
|
|
description: 'List configured MCP tools for this session.',
|
|
},
|
|
{
|
|
name: 'mention',
|
|
command: '/mention',
|
|
description: 'Attach a file or folder to the conversation.',
|
|
},
|
|
{
|
|
name: 'apps',
|
|
command: '/apps',
|
|
description: 'Browse available apps and connectors.',
|
|
},
|
|
{
|
|
name: 'plugins',
|
|
command: '/plugins',
|
|
description: 'Browse and manage installed plugins.',
|
|
},
|
|
{
|
|
name: 'agent',
|
|
command: '/agent',
|
|
description: 'Switch to another agent thread.',
|
|
},
|
|
{
|
|
name: 'personality',
|
|
command: '/personality',
|
|
description: 'Change Codex response style for the current thread.',
|
|
},
|
|
{
|
|
name: 'compact',
|
|
command: '/compact',
|
|
description: 'Summarize the conversation to free tokens.',
|
|
},
|
|
{
|
|
name: 'clear',
|
|
command: '/clear',
|
|
description: 'Clear the terminal and start a fresh chat.',
|
|
},
|
|
{
|
|
name: 'new',
|
|
command: '/new',
|
|
description: 'Start a new conversation in the current session.',
|
|
},
|
|
{
|
|
name: 'copy',
|
|
command: '/copy',
|
|
description: 'Copy the latest completed Codex output.',
|
|
},
|
|
{
|
|
name: 'fork',
|
|
command: '/fork',
|
|
description: 'Fork the current conversation into a new thread.',
|
|
},
|
|
{
|
|
name: 'resume',
|
|
command: '/resume',
|
|
description: 'Resume a previous conversation.',
|
|
},
|
|
{
|
|
name: 'quit',
|
|
command: '/quit',
|
|
description: 'Exit the CLI.',
|
|
},
|
|
{
|
|
name: 'exit',
|
|
command: '/exit',
|
|
description: 'Exit the CLI.',
|
|
},
|
|
] as const;
|
|
|
|
export function getSuggestedSlashCommandsForProvider(
|
|
providerId?: TeamProviderId
|
|
): readonly KnownSlashCommandDefinition[] {
|
|
if (providerId === 'codex') {
|
|
return CODEX_SLASH_COMMAND_SUGGESTIONS;
|
|
}
|
|
|
|
return KNOWN_SLASH_COMMANDS;
|
|
}
|