feat(03-01): add skill section type wiring, Zustand slice, i18n, and sidebar nav entry

- Add "skills" to SectionId union in shared types
- Add SkillRecord, SkillImportResult, SkillUpdateStatus types to shared/types.ts
- Create SkillSlice with skills list, selection, file path, and import modal state
- Wire SkillSlice into Zustand store composition
- Add "nav.skills" i18n keys for English and Chinese
- Add Skills sidebar nav entry with PuzzlePiece icon between Communication and Documents
- Add section === "skills" rendering route in App.tsx
- Clear skill state on company switch
- Add skills case to navigateTo in NavigationSlice

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
ZacharyZhang-NYandClaude Opus 4.6 committed 2026-03-26 01:45:32 -04:00
1 parent c1de05a7f1
commit e8d642941f
9 files changed
+121 -1

No files matched your search

@@ -0,0 +1,15 @@
import type { AgentRecord } from "@shared/types";
interface SkillsSectionProps {
companyId: string;
agents: AgentRecord[];
onRefresh: () => void;
}
export function SkillsSection({ companyId: _companyId, agents: _agents, onRefresh: _onRefresh }: SkillsSectionProps) {
return (
<div className="h-full">
<p className="text-[color:var(--muted)]">Skills section placeholder -- Task 2</p>
</div>
);
}
+1
View File
@@ -0,0 +1 @@
export { SkillsSection } from "./SkillsSection";