feat(knowledge-base): wrap KnowledgeBase API in the CLI
Add `hf knowledge-base` group: list/get/tree/topics, create/update/delete, link/unlink to projects, and add/update/delete for topics, categories and facts. Mirrors the project command style (flag parsing, JSON/table output, token resolution). Registered in the dispatcher and the help surface, gated on the knowledge-base.* permissions. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -84,6 +84,30 @@ func CommandSurface() []Group {
|
||||
{Name: "remove-member", Description: "Remove a project member", Permitted: has(perms, "project.manage_members")},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "knowledge-base",
|
||||
Description: "Manage knowledge bases (topics, categories, facts) and project links",
|
||||
SubCommands: []Command{
|
||||
{Name: "list", Description: "List knowledge bases", Permitted: has(perms, "knowledge-base.read")},
|
||||
{Name: "get", Description: "Show a knowledge base by code", Permitted: has(perms, "knowledge-base.read")},
|
||||
{Name: "tree", Description: "Show the full topic/category/fact tree", Permitted: has(perms, "knowledge-base.read")},
|
||||
{Name: "topics", Description: "List topics in a knowledge base", Permitted: has(perms, "knowledge-base.read")},
|
||||
{Name: "create", Description: "Create a knowledge base", Permitted: has(perms, "knowledge-base.create")},
|
||||
{Name: "update", Description: "Update a knowledge base", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "delete", Description: "Delete a knowledge base", Permitted: has(perms, "knowledge-base.delete")},
|
||||
{Name: "link", Description: "Link a knowledge base to a project", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "unlink", Description: "Unlink a knowledge base from a project", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "add-topic", Description: "Add a topic", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "update-topic", Description: "Update a topic", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "delete-topic", Description: "Delete a topic", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "add-category", Description: "Add a category", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "update-category", Description: "Update a category", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "delete-category", Description: "Delete a category (and its descendants)", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "add-fact", Description: "Add a fact", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "update-fact", Description: "Update a fact", Permitted: has(perms, "knowledge-base.update")},
|
||||
{Name: "delete-fact", Description: "Delete a fact", Permitted: has(perms, "knowledge-base.update")},
|
||||
},
|
||||
},
|
||||
{
|
||||
Name: "milestone",
|
||||
Description: "Manage milestones",
|
||||
|
||||
Reference in New Issue
Block a user