feat: refactor 30+ skills to Anthropic progressive disclosure pattern
- All SKILL.md files now <500 lines (avg reduction 69%) - Detailed content extracted to references/ subdirectories - Frontmatter standardised: only name + description (Anthropic standard) - New skills: brand-guidelines, spec-coauthor, report-templates, skill-creator - Design skills: anti-slop guidelines, premium-proposals reference - Removed non-standard frontmatter fields (triggers, version, author, category) Plugins affected: infraestrutura, marketing, dev-tools, crm-ops, gestao, core-tools, negocio, perfex-dev, wordpress, design-media Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,178 @@
|
||||
# EasyPanel API - Service Configuration
|
||||
|
||||
## Actualizar Source (GitHub)
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updateSourceGithub" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"owner":"ealmeida",
|
||||
"repo":"MeuRepo",
|
||||
"ref":"main",
|
||||
"path":"/"
|
||||
}}'
|
||||
```
|
||||
|
||||
## Actualizar Source (Git Custom)
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updateSourceGit" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"repo":"https://git.descomplicar.pt/org/repo",
|
||||
"ref":"main",
|
||||
"path":"/"
|
||||
}}'
|
||||
```
|
||||
|
||||
## Actualizar Source (Docker Image)
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updateSourceImage" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"image":"node:22-alpine"
|
||||
}}'
|
||||
```
|
||||
|
||||
## Actualizar Environment Variables
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updateEnv" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"env":"NODE_ENV=production\nPORT=3000\nDATABASE_URL=postgres://..."
|
||||
}}'
|
||||
```
|
||||
|
||||
## Actualizar Domains
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updateDomains" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"domains":[
|
||||
{"host":"api.descomplicar.pt","https":true,"port":3000}
|
||||
]
|
||||
}}'
|
||||
```
|
||||
|
||||
## Actualizar Mounts
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updateMounts" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"mounts":[
|
||||
{"type":"volume","name":"data","mountPath":"/app/data"}
|
||||
]
|
||||
}}'
|
||||
```
|
||||
|
||||
## Actualizar Ports (non-HTTP)
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updatePorts" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"ports":[
|
||||
{"published":8080,"target":3000,"protocol":"tcp"}
|
||||
]
|
||||
}}'
|
||||
```
|
||||
|
||||
## Actualizar Resources
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updateResources" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"resources":{
|
||||
"memoryLimit":"512m",
|
||||
"memoryReservation":"256m",
|
||||
"cpuLimit":1,
|
||||
"cpuReservation":0.5
|
||||
}
|
||||
}}'
|
||||
```
|
||||
|
||||
## Actualizar Build Config
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updateBuild" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"build":{
|
||||
"type":"nixpacks",
|
||||
"buildCommand":"npm run build",
|
||||
"startCommand":"npm start"
|
||||
}
|
||||
}}'
|
||||
```
|
||||
|
||||
## Actualizar Deploy (Replicas, Command)
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.updateAdvanced" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-api",
|
||||
"deploy":{
|
||||
"replicas":2,
|
||||
"command":"node dist/index.js",
|
||||
"zeroDowntime":true
|
||||
}
|
||||
}}'
|
||||
```
|
||||
|
||||
## Database Backup Config
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.postgres.updateBackup" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{
|
||||
"projectName":"descomplicar",
|
||||
"serviceName":"minha-db",
|
||||
"backup":{
|
||||
"enabled":true,
|
||||
"schedule":"0 3 * * *",
|
||||
"destination":{
|
||||
"type":"s3",
|
||||
"bucket":"backups",
|
||||
"region":"eu-west-1",
|
||||
"accessKey":"...",
|
||||
"secretKey":"..."
|
||||
}
|
||||
}
|
||||
}}'
|
||||
```
|
||||
100
infraestrutura/skills/easypanel-api/references/services-api.md
Normal file
100
infraestrutura/skills/easypanel-api/references/services-api.md
Normal file
@@ -0,0 +1,100 @@
|
||||
# EasyPanel API - Services
|
||||
|
||||
## Service Types
|
||||
|
||||
| Type | Descricao |
|
||||
|------|-----------|
|
||||
| `app` | Aplicacao (Node.js, Python, Go, etc.) |
|
||||
| `mysql` | MySQL database |
|
||||
| `mariadb` | MariaDB database |
|
||||
| `postgres` | PostgreSQL database |
|
||||
| `mongo` | MongoDB database |
|
||||
| `redis` | Redis cache |
|
||||
|
||||
## Criar Servico App
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.createService" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{"projectName":"descomplicar","serviceName":"minha-api"}}'
|
||||
```
|
||||
|
||||
## Criar Servico Database
|
||||
|
||||
```bash
|
||||
# PostgreSQL
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.postgres.createService" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{"projectName":"descomplicar","serviceName":"minha-db"}}'
|
||||
|
||||
# MySQL
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.mysql.createService" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{"projectName":"descomplicar","serviceName":"mysql-db"}}'
|
||||
|
||||
# Redis
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.redis.createService" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{"projectName":"descomplicar","serviceName":"cache"}}'
|
||||
```
|
||||
|
||||
## Inspeccionar Servico
|
||||
|
||||
```bash
|
||||
curl -s "http://localhost:3000/api/trpc/services.app.inspectService?input=%7B%22json%22%3A%7B%22projectName%22%3A%22descomplicar%22%2C%22serviceName%22%3A%22dashboard_descomplicar%22%7D%7D" \
|
||||
-H "Authorization: Bearer $TOKEN"
|
||||
```
|
||||
|
||||
Response:
|
||||
```json
|
||||
{
|
||||
"projectName": "descomplicar",
|
||||
"name": "dashboard_descomplicar",
|
||||
"type": "app",
|
||||
"enabled": true,
|
||||
"token": "deploy-webhook-token",
|
||||
"source": {"type": "git", "repo": "https://...", "ref": "main"},
|
||||
"build": {"type": "nixpacks", "buildCommand": "npm run build"},
|
||||
"env": "VAR=value",
|
||||
"mounts": [],
|
||||
"ports": []
|
||||
}
|
||||
```
|
||||
|
||||
## Deploy Servico
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.deployService" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{"projectName":"descomplicar","serviceName":"minha-api"}}'
|
||||
```
|
||||
|
||||
## Enable/Disable Servico
|
||||
|
||||
```bash
|
||||
# Disable
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.disableService" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{"projectName":"descomplicar","serviceName":"minha-api"}}'
|
||||
|
||||
# Enable
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.enableService" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{"projectName":"descomplicar","serviceName":"minha-api"}}'
|
||||
```
|
||||
|
||||
## Destruir Servico
|
||||
|
||||
```bash
|
||||
curl -s -X POST "http://localhost:3000/api/trpc/services.app.destroyService" \
|
||||
-H "Authorization: Bearer $TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"json":{"projectName":"descomplicar","serviceName":"minha-api"}}'
|
||||
```
|
||||
Reference in New Issue
Block a user