@memoring/cli 0.12.0 → 0.12.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/commands/stage.js +2 -2
- package/dist/main.js +1 -1
- package/package.json +1 -1
- package/skills/memoring-cli/SKILL.md +8 -6
package/README.md
CHANGED
|
@@ -95,7 +95,7 @@ Cada item do lote (1 a 50, all-or-nothing):
|
|
|
95
95
|
- `type`: `NOTE` (nota, exige `content` em markdown; `NORMAL` legado é aceito e mapeado para `NOTE`), `FLASHCARD` ou `ONE_SHOT` (exigem `front` + `back`), `QUESTION` (exige `question`: `kind` `MULTIPLA_ESCOLHA`/`CERTO_ERRADO`, `statementHtml`, `correctAlternative` 1-based — 1=Certo/2=Errado —, `alternatives` 2–5 só em múltipla escolha, `commentHtml`).
|
|
96
96
|
- `deckName`: **obrigatório** (ou `--deck` no create) — cartão não fica sem baralho; o nome de um baralho existente (`memoring deck list`) é reutilizado, nome novo vira baralho criado no envio.
|
|
97
97
|
- `source`: origem do material — default `"Importação assistida (CLI)"`.
|
|
98
|
-
- Limites por tipo
|
|
98
|
+
- Limites por tipo são **tetos, nunca cotas**: `memoring stage caps` mostra/grava sua preferência (`livre`/`-1` = sem teto preferencial — o padrão, não um incentivo a inflar o lote; `0` = não gerar o tipo) — o `stage schema` a expõe ao agente (`userCaps`) e o `create` a impõe; flags `--max-*` no `create` vencem por lote. O 50 é apenas o limite técnico por requisição, não a meta: sem quantidade explícita, o agente deve selecionar apenas os pontos realmente cobráveis e manter uma carga de revisão sustentável.
|
|
99
99
|
- Sem sessão, o `stage schema --json` sai com `authenticated: false`, `userCaps`/`qualityRules`/`customInstructions` nulos e um `warning` — agentes devem logar (`auth login`) e reler o schema ANTES de gerar.
|
|
100
100
|
|
|
101
101
|
## Para agentes de IA
|
package/dist/commands/stage.js
CHANGED
|
@@ -178,7 +178,7 @@ const SCHEMA_JSON = {
|
|
|
178
178
|
},
|
|
179
179
|
},
|
|
180
180
|
],
|
|
181
|
-
typeCaps: 'preferência por usuário (`memoring stage caps`, vale para app e CLI) — o
|
|
181
|
+
typeCaps: 'preferência por usuário (`memoring stage caps`, vale para app e CLI) — limites são TETOS, nunca cotas: 50 é só o limite técnico por requisição, não a meta do lote; userCaps -1 = sem teto preferencial (não é incentivo a inflar), 0 = não gerar o tipo. Sem quantidade explícita no pedido, selecione só pontos realmente cobráveis, com cobertura seletiva e carga de revisão sustentável. Flags do `stage create` (--max-notes N | --max-flashcards N | --max-one-shots N | --max-questions N, ou "livre") vencem a preferência por lote.',
|
|
182
182
|
};
|
|
183
183
|
const SCHEMA_TEXT = `Contrato dos itens da caixa de revisão (POST /api/notes/review-inbox):
|
|
184
184
|
|
|
@@ -466,7 +466,7 @@ export async function stageCommand(parsed) {
|
|
|
466
466
|
process.stdout.write(`\nLimites por tipo configurados por você — o agente DEVE respeitá-los ao gerar o lote: ` +
|
|
467
467
|
`notas: ${capLabel(caps.maxNotes)}, flashcards: ${capLabel(caps.maxFlashcards)}, ` +
|
|
468
468
|
`1-shots: ${capLabel(caps.maxOneShots)}, questões: ${capLabel(caps.maxQuestions)}.\n` +
|
|
469
|
-
dim('("à vontade" =
|
|
469
|
+
dim('("à vontade" = sem teto preferencial, não uma cota: selecione só o que for realmente cobrável; 50 é só o limite técnico por envio, nunca a meta. Altere com `memoring stage caps`)\n'));
|
|
470
470
|
}
|
|
471
471
|
else {
|
|
472
472
|
process.stdout.write(dim('\n(limites por tipo indisponíveis — faça `memoring auth login` ou verifique a conexão)\n'));
|
package/dist/main.js
CHANGED
|
@@ -9,7 +9,7 @@ import { updateCommand } from './commands/update.js';
|
|
|
9
9
|
import { skillCommand } from './commands/skill.js';
|
|
10
10
|
import { parseArgs as parse } from './commands/shared.js';
|
|
11
11
|
import { newerVersionAvailable, scheduleUpdateCheck } from './update.js';
|
|
12
|
-
const VERSION = '0.12.
|
|
12
|
+
const VERSION = '0.12.1';
|
|
13
13
|
const HELP = `Memoring CLI — flashcards e notas por IA, direto do terminal.
|
|
14
14
|
|
|
15
15
|
Uso: memoring <comando> [subcomando] [flags]
|
package/package.json
CHANGED
|
@@ -55,12 +55,14 @@ Flags globais: `--json` (saída legível por máquina), `--no-color`, `--api-bas
|
|
|
55
55
|
- `subjectName`/`subtopicName` quando o material tiver matéria/subtópico claros; `tags` curtas e em minúsculas.
|
|
56
56
|
- NUNCA invente campos fora do contrato — o servidor rejeita o lote inteiro.
|
|
57
57
|
|
|
58
|
-
## Quantidades (limites
|
|
59
|
-
|
|
60
|
-
-
|
|
61
|
-
-
|
|
62
|
-
-
|
|
63
|
-
-
|
|
58
|
+
## Quantidades (limites são tetos, NUNCA cotas)
|
|
59
|
+
|
|
60
|
+
- **50 é apenas o limite técnico de itens por requisição, NÃO a meta do lote.** Nunca mire nesse número, não proponha faixas como “46–50” sem o usuário pedir e não acrescente itens para “fechar” um lote.
|
|
61
|
+
- **Sem quantidade explícita no pedido, não estabeleça um alvo numérico antes de analisar o material.** A quantidade é consequência da seleção: inclua conceitos centrais, exceções e confusões realmente cobráveis, além das questões prontas. Não transforme cada parágrafo, detalhe secundário, exemplo ou sigla em cartão — a cobertura é SELETIVA, não exaustiva. Em dúvida, prefira menos itens.
|
|
62
|
+
- **Considere a carga de revisão acumulada do usuário.** Milhares de páginas de estudo não podem virar dezenas de milhares de revisões mecânicas. Não use uma taxa de cartões por página (ex.: “50 a cada 10–15 páginas”): densidade e importância do assunto importam mais que o volume do PDF.
|
|
63
|
+
- `userCaps` com `-1` significa apenas **sem teto preferencial**, não “cresça à vontade”. Tetos numéricos são limites máximos, nunca cotas a preencher; `0` proíbe o tipo.
|
|
64
|
+
- Se o usuário pedir quantidades no chat (ex.: “quero 30 flashcards e 5 notas”), o pedido vence o `userCaps`: gere e valide com `--max-flashcards 30 --max-notes 5` no `stage create`.
|
|
65
|
+
- Se a seleção de pontos realmente úteis ultrapassar 50 itens, divida em vários arquivos de até 50 e envie sequencialmente — nunca infle um lote para usar a capacidade disponível.
|
|
64
66
|
|
|
65
67
|
## Qualidade dos flashcards (o padrão que o app espera)
|
|
66
68
|
|