Skip to content

Commit 72f49f9

Browse files
committed
feat(FR-1697): add a claude skill references the backend.ai docs (#4669)
resolves #4668 (FR-1697) This PR adds a new Claude skill to provide expert-level information about the [Backend.AI](http://Backend.AI) platform. The skill automatically activates when users ask about: - [Backend.AI](http://Backend.AI) architecture and components (Manager, Agent, Storage Proxy, Webserver, App Proxy) - Platform features (session scheduling, Sokovan orchestrator, multi-tenancy, resource allocation) - APIs (REST, GraphQL), authentication, and RBAC authorization - Container runtime elements (kernels, jail sandbox, hook library, virtual folders) - Accelerator support (CUDA, ROCm, TPU, NPU, Graphcore IPU) - Client SDKs (Python, Java, JavaScript, PHP) - Setup requirements and infrastructure - WebUI integration with [Backend.AI](http://Backend.AI) backend The skill includes: - Detailed instructions for fetching and synthesizing documentation - Common questions reference guide - Component overview for quick lookups - Example responses for architecture, component, and WebUI integration questions **how to test** Ask Claude Code about [backend.ai](http://backend.ai)! **Checklist:** (if applicable) - [x] Documentation - [ ] Minium required manager version - [ ] Specific setting for review (eg., KB link, endpoint or how to setup) - [ ] Minimum requirements to check during review - [ ] Test case(s) to demonstrate the difference of before/after
1 parent c850865 commit 72f49f9

File tree

6 files changed

+2097
-0
lines changed

6 files changed

+2097
-0
lines changed
Lines changed: 202 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,202 @@
1+
---
2+
name: backend-ai-guide
3+
description: |
4+
Expert guide for Backend.AI distributed computing platform. Automatically
5+
activates when users ask about:
6+
- Backend.AI architecture, components (Manager, Agent, Storage Proxy, Webserver, App Proxy)
7+
- Features (session scheduling, Sokovan orchestrator, multi-tenancy, resource allocation)
8+
- APIs (REST, GraphQL), authentication, RBAC authorization
9+
- Container runtime (kernels, jail sandbox, hook library, virtual folders)
10+
- Accelerator support (CUDA, ROCm, TPU, NPU, Graphcore IPU)
11+
- Client SDKs (Python, Java, JavaScript, PHP)
12+
- Setup, requirements (Python 3.13+, Docker, PostgreSQL, Redis, etcd)
13+
- How WebUI connects to/interacts with Backend.AI backend
14+
- Plugin interfaces, development setup, infrastructure
15+
Use when user mentions "Backend.AI", "backend.ai", "Sokovan", component names,
16+
or asks about the backend platform this WebUI connects to.
17+
allowed-tools: WebFetch, Read
18+
---
19+
20+
# Backend.AI Guide Skill
21+
22+
## Purpose
23+
24+
This skill provides expert-level information about the Backend.AI platform by:
25+
26+
- Fetching official documentation from the Backend.AI GitHub repository
27+
- Recursively exploring Major Components documentation links
28+
- Following relevant links to gather comprehensive technical details
29+
- Providing accurate, source-backed answers about Backend.AI architecture and features
30+
31+
## When to Use
32+
33+
Activate this skill when the user asks about:
34+
35+
- Backend.AI platform overview or architecture
36+
- Backend.AI components (Manager, Agent, Storage Proxy, Webserver, App Proxy)
37+
- Backend.AI setup, requirements, or infrastructure
38+
- Backend.AI APIs (REST, GraphQL)
39+
- Backend.AI features (session scheduling, resource allocation, multi-tenancy)
40+
- Backend.AI kernels, containers, or runtime elements
41+
- How the WebUI connects to or interacts with Backend.AI backend
42+
- Differences between Backend.AI components
43+
44+
## Primary Documentation Sources
45+
46+
1. **Main README**: https://github.com/lablup/backend.ai/blob/main/README.md
47+
48+
- Overview and architecture
49+
- Major Components section with component links
50+
- Requirements and setup information
51+
52+
2. **Major Component READMEs**: Follow links from the Major Components section
53+
54+
- Manager component details
55+
- Agent component details
56+
- Storage Proxy details
57+
- Webserver details
58+
- App Proxy details
59+
- And other components
60+
61+
3. **Recursive Link Following**: When a component README references additional documentation, follow those links to gather comprehensive information
62+
63+
## Instructions
64+
65+
### Step 1: Identify the Question Scope
66+
67+
- Determine what aspect of Backend.AI the user is asking about
68+
- Identify which components or features are relevant
69+
70+
### Step 2: Fetch the Main README
71+
72+
- Always start by fetching: https://github.com/lablup/backend.ai/blob/main/README.md
73+
- Extract key information relevant to the question
74+
- Identify links to Major Components that need to be explored
75+
76+
### Step 3: Recursively Fetch Component Documentation
77+
78+
- For questions about specific components, fetch their individual READMEs
79+
- Component README links are found in the "Major Components" section
80+
- Example component paths (adjust based on actual links):
81+
- Manager: `src/ai/backend/manager/README.md`
82+
- Agent: `src/ai/backend/agent/README.md`
83+
- Storage Proxy: `src/ai/backend/storage/README.md`
84+
- Webserver: `src/ai/backend/web/README.md`
85+
- App Proxy: `src/ai/backend/appproxy/README.md`
86+
87+
### Step 4: Follow Additional Links
88+
89+
- If component READMEs reference additional documentation, follow those links
90+
- Common additional documentation types:
91+
- Architecture diagrams
92+
- API documentation
93+
- Configuration guides
94+
- Development guides
95+
- **Important**: Only follow links that are relevant to answering the user's question
96+
97+
### Step 5: Synthesize and Present Information
98+
99+
- Combine information from all fetched sources
100+
- Structure the answer logically:
101+
1. Direct answer to the user's question
102+
2. Supporting details from official documentation
103+
3. Related component interactions (if applicable)
104+
4. Links to source documentation for further reading
105+
- Use clear headings and formatting
106+
- Include code examples or configuration snippets when relevant
107+
108+
## Best Practices
109+
110+
1. **Always Cite Sources**
111+
112+
- Reference the specific documentation URLs you fetched
113+
- Help users find more detailed information
114+
115+
2. **Stay Current**
116+
117+
- Fetch documentation fresh each time (don't rely on cached knowledge)
118+
- Note version requirements (Python, Docker, PostgreSQL, etc.)
119+
120+
3. **Explain Component Interactions**
121+
122+
- Backend.AI is a distributed system - explain how components work together
123+
- Clarify the relationship between WebUI (this project) and Backend.AI backend
124+
125+
4. **Be Precise with Technical Details**
126+
127+
- Include version numbers, requirements, and configuration details
128+
- Distinguish between different API types (REST vs GraphQL)
129+
130+
5. **Limit Recursion Depth**
131+
- Fetch main README + relevant component READMEs
132+
- Only follow 1-2 additional link levels unless user needs deep details
133+
- Balance thoroughness with response time
134+
135+
## Example Question Types
136+
137+
**Architecture Questions**
138+
139+
- "How does Backend.AI work?"
140+
- "What is the architecture of Backend.AI?"
141+
- "What are the main components of Backend.AI?"
142+
143+
**Component Questions**
144+
145+
- "What does the Backend.AI Manager do?"
146+
- "How does the Agent component work?"
147+
- "What is the Storage Proxy?"
148+
149+
**Integration Questions**
150+
151+
- "How does this WebUI connect to Backend.AI?"
152+
- "What APIs does Backend.AI expose?"
153+
- "How do I authenticate with Backend.AI?"
154+
155+
**Setup Questions**
156+
157+
- "What are the requirements for Backend.AI?"
158+
- "How do I set up Backend.AI?"
159+
- "What infrastructure does Backend.AI need?"
160+
161+
## Response Format
162+
163+
Structure answers as follows:
164+
165+
```markdown
166+
## [Direct Answer to Question]
167+
168+
[Concise, direct answer based on official documentation]
169+
170+
## Details
171+
172+
[Supporting information from fetched documentation]
173+
174+
### Component Interactions (if applicable)
175+
176+
[How different components work together]
177+
178+
## Technical Specifications (if applicable)
179+
180+
- Requirements: [versions, dependencies]
181+
- Configuration: [relevant settings]
182+
- APIs: [REST/GraphQL endpoints]
183+
184+
## Source Documentation
185+
186+
- Main: [URL to main README]
187+
- Component: [URLs to component READMEs]
188+
- Additional: [URLs to other relevant docs]
189+
```
190+
191+
## Notes
192+
193+
- Backend.AI is the **backend platform** that this WebUI project connects to
194+
- This WebUI (backend.ai-webui) is a **client application** that uses Backend.AI's APIs
195+
- When users ask about "the backend" in this project context, they likely mean Backend.AI
196+
- Distinguish between WebUI code (this project) and Backend.AI platform code (separate repo)
197+
198+
## Limitations
199+
200+
- This skill only fetches publicly available GitHub documentation
201+
- For questions requiring internal documentation or specific deployment details, direct users to Backend.AI team
202+
- Cannot access private repositories or non-public documentation

0 commit comments

Comments
 (0)