Help us shape the future of Go! Take the 2026 Go Developer Survey

chat

package
v6.9.10 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 14, 2026 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Overview

Package chat implements the AI-assisted chat command.

This package provides the `ksail chat` command, which starts an interactive AI chat session powered by GitHub Copilot. It supports both TUI and non-TUI modes, with tool permission enforcement and plan/agent mode switching.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func BuildPreToolUseHook

func BuildPreToolUseHook(
	allowedRoot string,
) copilot.PreToolUseHandler

BuildPreToolUseHook creates a PreToolUseHandler that enforces path sandboxing on ALL tool invocations (both custom KSail tools and SDK-managed tools like git/shell/filesystem). Mode enforcement (plan mode tool blocking) is handled server-side via Session.RPC.Mode.Set().

func NewChatCmd

func NewChatCmd(_ *di.Runtime) *cobra.Command

NewChatCmd creates and returns the chat command.

func WrapToolsWithForceInjection

func WrapToolsWithForceInjection(
	tools []copilot.Tool,
	toolMetadata map[string]toolgen.ToolDefinition,
) []copilot.Tool

WrapToolsWithForceInjection wraps write tools to inject the --force flag after SDK-native permission approval. Permission handling is delegated entirely to the SDK's OnPermissionRequest handler — this wrapper only handles force-flag injection.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL