co-mono/packages/coding-agent/src/index.ts
Mario Zechner 05b7b81338 Skills standard compliance
Implement Agent Skills standard (https://agentskills.io/specification):
- Validate name (must match parent dir, lowercase, max 64 chars)
- Validate description (required, max 1024 chars)
- Warn on unknown frontmatter fields
- Warn on name collisions (keep first)
- Change prompt format to XML structure
- Remove {baseDir} placeholder (use relative paths)
- Add tests and update documentation

fixes #231
2025-12-19 00:11:39 +01:00

95 lines
2.1 KiB
TypeScript

// Core session management
export {
AgentSession,
type AgentSessionConfig,
type AgentSessionEvent,
type AgentSessionEventListener,
type CompactionResult,
type ModelCycleResult,
type PromptOptions,
type SessionStats,
} from "./core/agent-session.js";
// Compaction
export {
type CutPointResult,
calculateContextTokens,
compact,
DEFAULT_COMPACTION_SETTINGS,
estimateTokens,
findCutPoint,
findTurnStartIndex,
generateSummary,
getLastAssistantUsage,
shouldCompact,
} from "./core/compaction.js";
// Custom tools
export type {
CustomAgentTool,
CustomToolFactory,
CustomToolsLoadResult,
ExecResult,
LoadedCustomTool,
RenderResultOptions,
SessionEvent as ToolSessionEvent,
ToolAPI,
ToolUIContext,
} from "./core/custom-tools/index.js";
export { discoverAndLoadCustomTools, loadCustomTools } from "./core/custom-tools/index.js";
// Hook system types
export type {
AgentEndEvent,
AgentStartEvent,
BranchEvent,
BranchEventResult,
HookAPI,
HookEvent,
HookEventContext,
HookFactory,
HookUIContext,
SessionEvent,
ToolCallEvent,
ToolCallEventResult,
ToolResultEvent,
ToolResultEventResult,
TurnEndEvent,
TurnStartEvent,
} from "./core/hooks/index.js";
export { messageTransformer } from "./core/messages.js";
export {
type CompactionEntry,
createSummaryMessage,
getLatestCompactionEntry,
type LoadedSession,
loadSessionFromEntries,
type ModelChangeEntry,
parseSessionEntries,
type SessionEntry,
type SessionHeader,
SessionManager,
type SessionMessageEntry,
SUMMARY_PREFIX,
SUMMARY_SUFFIX,
type ThinkingLevelChangeEntry,
} from "./core/session-manager.js";
export {
type CompactionSettings,
type RetrySettings,
type Settings,
SettingsManager,
} from "./core/settings-manager.js";
// Skills
export {
formatSkillsForPrompt,
type LoadSkillsFromDirOptions,
type LoadSkillsResult,
loadSkills,
loadSkillsFromDir,
type Skill,
type SkillFrontmatter,
type SkillWarning,
} from "./core/skills.js";
// Tools
export { bashTool, codingTools, editTool, readTool, writeTool } from "./core/tools/index.js";
// Main entry point
export { main } from "./main.js";