dk-bogfoerer 1.0.2 → 1.0.4
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/dist/billy-api.js +1 -1
- package/dist/billy-api.js.map +1 -1
- package/dist/cli.js +116 -104
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/dist/billy-api.js
CHANGED
|
@@ -12,7 +12,7 @@ export function getToken() {
|
|
|
12
12
|
if (!token) {
|
|
13
13
|
throw new Error("BILLY_API_TOKEN er ikke sat.\n" +
|
|
14
14
|
"Find dit token: Billy → Indstillinger → Adgangstokens\n" +
|
|
15
|
-
"
|
|
15
|
+
"Kør 'dk-bogfoerer setup' for at konfigurere.");
|
|
16
16
|
}
|
|
17
17
|
return token;
|
|
18
18
|
}
|
package/dist/billy-api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"billy-api.js","sourceRoot":"","sources":["../src/billy-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,QAAQ,GAAG,kCAAkC,CAAC;AAEpD,IAAI,aAAiC,CAAC;AAEtC,MAAM,UAAU,QAAQ,CAAC,KAAa;IACpC,aAAa,GAAG,KAAK,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,KAAK,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,MAAM,KAAK,GAAG,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,gCAAgC;YAChC,yDAAyD;YACzD
|
|
1
|
+
{"version":3,"file":"billy-api.js","sourceRoot":"","sources":["../src/billy-api.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.js
CHANGED
|
@@ -44,7 +44,7 @@ async function ensureCrewInstalled() {
|
|
|
44
44
|
}
|
|
45
45
|
catch (e) {
|
|
46
46
|
console.error(` ✗ Kunne ikke klone: ${e.message}`);
|
|
47
|
-
console.error(`
|
|
47
|
+
console.error(` Prøv manuelt: git clone https://github.com/${GITHUB_REPO}.git ~/.dk-bogfoerer`);
|
|
48
48
|
process.exit(1);
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -67,30 +67,30 @@ async function askChoice(rl, question, choices) {
|
|
|
67
67
|
for (let i = 0; i < choices.length; i++) {
|
|
68
68
|
console.log(` ${i + 1}) ${choices[i]}`);
|
|
69
69
|
}
|
|
70
|
-
const answer = await ask(rl, "
|
|
70
|
+
const answer = await ask(rl, "Vælg nummer", "1");
|
|
71
71
|
const idx = parseInt(answer, 10) - 1;
|
|
72
72
|
return choices[Math.max(0, Math.min(idx, choices.length - 1))];
|
|
73
73
|
}
|
|
74
|
-
// ───
|
|
74
|
+
// ─── Hjælpetekst ───
|
|
75
75
|
function printHelp() {
|
|
76
76
|
console.log(`
|
|
77
77
|
╔══════════════════════════════════════════════════╗
|
|
78
|
-
║ dk-bogfoerer — AI
|
|
78
|
+
║ dk-bogfoerer — AI Bogfører for Danmark ║
|
|
79
79
|
╚══════════════════════════════════════════════════╝
|
|
80
80
|
|
|
81
81
|
Brug:
|
|
82
|
-
dk-bogfoerer setup Interaktiv
|
|
83
|
-
dk-bogfoerer init [sti] Opret mappestruktur for
|
|
82
|
+
dk-bogfoerer setup Interaktiv førstegangsopsætning (start her!)
|
|
83
|
+
dk-bogfoerer init [sti] Opret mappestruktur for bogføring
|
|
84
84
|
dk-bogfoerer dump <mappe> Upload fakturaer/bilag til Billy
|
|
85
85
|
dk-bogfoerer status Vis Billy-forbindelse og firmainfo
|
|
86
|
-
dk-bogfoerer deadlines Vis
|
|
87
|
-
dk-bogfoerer help Vis denne
|
|
86
|
+
dk-bogfoerer deadlines Vis næste indberetningsfrister
|
|
87
|
+
dk-bogfoerer help Vis denne hjælp
|
|
88
88
|
|
|
89
|
-
|
|
89
|
+
Første gang? Kør:
|
|
90
90
|
dk-bogfoerer setup
|
|
91
91
|
`);
|
|
92
92
|
}
|
|
93
|
-
// ─── SETUP command (interaktiv
|
|
93
|
+
// ─── SETUP command (interaktiv førstegangsopsætning) ───
|
|
94
94
|
async function cmdSetup() {
|
|
95
95
|
const rl = createRl();
|
|
96
96
|
const claudeJson = join(process.env.HOME ?? "~", ".claude.json");
|
|
@@ -98,16 +98,16 @@ async function cmdSetup() {
|
|
|
98
98
|
console.log(`
|
|
99
99
|
╔══════════════════════════════════════════════════╗
|
|
100
100
|
║ dk-bogfoerer setup ║
|
|
101
|
-
║ Interaktiv
|
|
101
|
+
║ Interaktiv opsætning af AI Bogfører ║
|
|
102
102
|
╚══════════════════════════════════════════════════╝
|
|
103
103
|
`);
|
|
104
104
|
// ─── Trin 1: Billy API token ───
|
|
105
105
|
console.log(" ── Trin 1/6: Billy API token ──\n");
|
|
106
106
|
console.log(" For at forbinde til dit regnskabsprogram (Billy) skal du bruge et API token.");
|
|
107
107
|
console.log(" Find det i Billy: Indstillinger → Adgangstokens → Opret nyt token\n");
|
|
108
|
-
const billyToken = await ask(rl, "
|
|
108
|
+
const billyToken = await ask(rl, "Indsæt dit Billy API token");
|
|
109
109
|
if (!billyToken) {
|
|
110
|
-
console.log("\n ⚠ Intet token angivet. Du kan
|
|
110
|
+
console.log("\n ⚠ Intet token angivet. Du kan tilføje det senere med 'dk-bogfoerer setup'.\n");
|
|
111
111
|
}
|
|
112
112
|
else {
|
|
113
113
|
// Test token
|
|
@@ -118,7 +118,7 @@ async function cmdSetup() {
|
|
|
118
118
|
}
|
|
119
119
|
catch (e) {
|
|
120
120
|
console.log(`\n ✗ Token virkede ikke: ${e.message}`);
|
|
121
|
-
console.log(" Du kan
|
|
121
|
+
console.log(" Du kan prøve igen med 'dk-bogfoerer setup'.\n");
|
|
122
122
|
}
|
|
123
123
|
}
|
|
124
124
|
// ─── Trin 2: Gmail ───
|
|
@@ -135,20 +135,20 @@ async function cmdSetup() {
|
|
|
135
135
|
}
|
|
136
136
|
else {
|
|
137
137
|
console.log(" Gmail-integration lader dig hente fakturaer direkte fra din email.");
|
|
138
|
-
console.log(" Det er en built-in Claude Code integration — du aktiverer den
|
|
139
|
-
console.log(" 1.
|
|
138
|
+
console.log(" Det er en built-in Claude Code integration — du aktiverer den sådan:\n");
|
|
139
|
+
console.log(" 1. Åbn Claude Code");
|
|
140
140
|
console.log(" 2. Skriv /mcp");
|
|
141
|
-
console.log(" 3.
|
|
141
|
+
console.log(" 3. Vælg 'Claude AI' → aktiver 'Gmail'");
|
|
142
142
|
console.log(" 4. Log ind med din Google-konto\n");
|
|
143
|
-
console.log("
|
|
144
|
-
const gmailNow = await askChoice(rl, "Vil du aktivere Gmail nu? (
|
|
143
|
+
console.log(" Når det er aktiveret kan du bruge /gmail-bilag til at søge fakturaer.\n");
|
|
144
|
+
const gmailNow = await askChoice(rl, "Vil du aktivere Gmail nu? (kræver genstart af Claude Code)", ["Senere", "Vis mig hvordan"]);
|
|
145
145
|
if (gmailNow === "Vis mig hvordan") {
|
|
146
146
|
console.log("\n I Claude Code terminalen:");
|
|
147
147
|
console.log(" 1. Tryk Ctrl+C for at stoppe denne setup (vi gemmer dit Billy token)");
|
|
148
148
|
console.log(" 2. Skriv: /mcp");
|
|
149
149
|
console.log(" 3. Scroll ned til 'Claude AI' sektionen");
|
|
150
150
|
console.log(" 4. Aktiver 'Gmail' og log ind");
|
|
151
|
-
console.log(" 5.
|
|
151
|
+
console.log(" 5. Kør 'dk-bogfoerer setup' igen for at færdiggøre\n");
|
|
152
152
|
}
|
|
153
153
|
}
|
|
154
154
|
// ─── Trin 3: Virksomhedsinfo ───
|
|
@@ -174,25 +174,25 @@ async function cmdSetup() {
|
|
|
174
174
|
const vtKort = virksomhedstype.split(" ")[0].toLowerCase();
|
|
175
175
|
// ─── Trin 3: Momsperiode ───
|
|
176
176
|
console.log("\n ── Trin 4/7: Momsperiode ──\n");
|
|
177
|
-
console.log("
|
|
178
|
-
console.log(" Under 5 mio. kr. →
|
|
177
|
+
console.log(" Afhænger af din omsætning:");
|
|
178
|
+
console.log(" Under 5 mio. kr. → Halvår");
|
|
179
179
|
console.log(" 5-50 mio. kr. → Kvartal");
|
|
180
|
-
console.log(" Over 50 mio. kr. →
|
|
180
|
+
console.log(" Over 50 mio. kr. → Måned\n");
|
|
181
181
|
const momsperiode = await askChoice(rl, "Din momsperiode:", [
|
|
182
|
-
"
|
|
182
|
+
"Halvår (under 5 mio.)",
|
|
183
183
|
"Kvartal (5-50 mio.)",
|
|
184
|
-
"
|
|
184
|
+
"Måned (over 50 mio.)",
|
|
185
185
|
]);
|
|
186
186
|
const mpKort = momsperiode.split(" ")[0].toLowerCase();
|
|
187
187
|
// ─── Trin 4: Har du ansatte? ───
|
|
188
188
|
console.log("\n ── Trin 5/7: Ansatte ──\n");
|
|
189
189
|
const harAnsatte = await askChoice(rl, "Har virksomheden ansatte?", ["Ja", "Nej"]);
|
|
190
190
|
const ansatte = harAnsatte === "Ja";
|
|
191
|
-
const branche = await ask(rl, "Branche (f.eks. 'konsulent', 'handel', '
|
|
192
|
-
// ─── Trin 5:
|
|
193
|
-
console.log("\n ── Trin 6/7:
|
|
191
|
+
const branche = await ask(rl, "Branche (f.eks. 'konsulent', 'handel', 'håndværker')", "generel");
|
|
192
|
+
// ─── Trin 5: Bogføringsmappe ───
|
|
193
|
+
console.log("\n ── Trin 6/7: Bogføringsmappe ──\n");
|
|
194
194
|
const defaultPath = join(process.cwd(), firmanavn ? firmanavn.toLowerCase().replace(/[^a-z0-9æøåäöü]/g, "-").replace(/-+/g, "-") : "bogfoering");
|
|
195
|
-
const bogfoeringsSti = await ask(rl, "Hvor skal
|
|
195
|
+
const bogfoeringsSti = await ask(rl, "Hvor skal bogføringsmappen oprettes?", defaultPath);
|
|
196
196
|
// ─── Trin 6: Installer ───
|
|
197
197
|
console.log("\n ── Trin 7/7: Installation ──\n");
|
|
198
198
|
console.log(" Installerer...\n");
|
|
@@ -208,10 +208,10 @@ async function cmdSetup() {
|
|
|
208
208
|
if (!existsSync(join(bogfoeringMcpDir, "dist"))) {
|
|
209
209
|
execSync("npm run build --silent", { cwd: bogfoeringMcpDir, stdio: "ignore" });
|
|
210
210
|
}
|
|
211
|
-
console.log(" ✓ dk-bogfoerer MCP klar (42 tools: moms, skat, kontoplan,
|
|
211
|
+
console.log(" ✓ dk-bogfoerer MCP klar (42 tools: moms, skat, kontoplan, løn, retsinformation)");
|
|
212
212
|
}
|
|
213
213
|
catch {
|
|
214
|
-
console.log(" ⚠ Kunne ikke bygge dk-bogfoerer MCP.
|
|
214
|
+
console.log(" ⚠ Kunne ikke bygge dk-bogfoerer MCP. Kør 'npm install && npm run build' i bogfoerer-mcp/");
|
|
215
215
|
}
|
|
216
216
|
}
|
|
217
217
|
if (existsSync(billyMcpDir)) {
|
|
@@ -222,10 +222,10 @@ async function cmdSetup() {
|
|
|
222
222
|
if (!existsSync(join(billyMcpDir, "dist"))) {
|
|
223
223
|
execSync("npm run build --silent", { cwd: billyMcpDir, stdio: "ignore" });
|
|
224
224
|
}
|
|
225
|
-
console.log(" ✓ Billy MCP klar (26 tools: banklinjer, fakturaer,
|
|
225
|
+
console.log(" ✓ Billy MCP klar (26 tools: banklinjer, fakturaer, bogføring, moms)");
|
|
226
226
|
}
|
|
227
227
|
catch {
|
|
228
|
-
console.log(" ⚠ Kunne ikke bygge Billy MCP.
|
|
228
|
+
console.log(" ⚠ Kunne ikke bygge Billy MCP. Kør 'npm install && npm run build' i billy-mcp/");
|
|
229
229
|
}
|
|
230
230
|
}
|
|
231
231
|
// 6b: Registrer MCP-servere i ~/.claude.json
|
|
@@ -277,7 +277,7 @@ async function cmdSetup() {
|
|
|
277
277
|
}
|
|
278
278
|
console.log(` ✓ ${skillFiles.filter((f) => f.endsWith(".md")).length} skills installeret`);
|
|
279
279
|
}
|
|
280
|
-
// 6e: Opret
|
|
280
|
+
// 6e: Opret bogføringsmappe
|
|
281
281
|
const target = resolve(bogfoeringsSti);
|
|
282
282
|
const dirs = [
|
|
283
283
|
"bilag/indgaaende",
|
|
@@ -300,106 +300,118 @@ async function cmdSetup() {
|
|
|
300
300
|
momsperiode: mpKort,
|
|
301
301
|
branche,
|
|
302
302
|
har_ansatte: ansatte,
|
|
303
|
-
regnskabsaar: "
|
|
303
|
+
regnskabsaar: "kalenderår",
|
|
304
304
|
oprettet: new Date().toISOString().slice(0, 10),
|
|
305
305
|
billy_token_sat: !!billyToken,
|
|
306
306
|
};
|
|
307
307
|
await writeFile(join(target, "config.json"), JSON.stringify(config, null, 2), "utf-8");
|
|
308
308
|
// CLAUDE.md — dispatcher-instruktioner tilpasset denne virksomhed
|
|
309
|
-
const claudeMd = `# ${firmanavn || "
|
|
309
|
+
const claudeMd = `# ${firmanavn || "Bogføring"} — AI Bogfører
|
|
310
310
|
|
|
311
|
-
Du er AI-
|
|
311
|
+
Du er AI-bogfører for **${firmanavn || "denne virksomhed"}**${cvr ? ` (CVR: ${cvr})` : ""}.
|
|
312
312
|
Virksomhedstype: **${virksomhedstype}** | Momsperiode: **${momsperiode}** | ${ansatte ? "Har ansatte" : "Ingen ansatte"} | Branche: ${branche}
|
|
313
313
|
|
|
314
314
|
## Dine regler
|
|
315
315
|
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
316
|
+
### ALTID kør igennem moms/skat-regler før bogføring (KRITISK)
|
|
317
|
+
|
|
318
|
+
Uanset om det er /bogfoer, /bankafstem, /match-bilag eller anden postering:
|
|
319
|
+
1. Kør \`bilag_klassificer\` → korrekt konto + momskode
|
|
320
|
+
2. Kør \`tjek_bilag\` → fang fejl
|
|
321
|
+
3. Tjek \`memory/leverandoerer.json\` → kender vi leverandøren?
|
|
322
|
+
4. Vis kontering og spørg om godkendelse — ALDRIG bogfør uden OK
|
|
323
|
+
5. Brug korrekt momskode (restaurant=25%, hotel=100%, personbil=0%, forsikring=momsfri)
|
|
324
|
+
6. Opdater hukommelse efter bogføring
|
|
325
|
+
|
|
326
|
+
### Øvrige regler
|
|
327
|
+
|
|
328
|
+
- Slå ALTID regler op via MCP-tools — stol aldrig på hukommelsen
|
|
329
|
+
- Citer lovtekst med lov_paragraf når du rådgiver om regler
|
|
330
|
+
- Advar om usikkerhed — anbefal professionel revisor ved komplekse spørgsmål
|
|
331
|
+
- Svar på dansk
|
|
321
332
|
|
|
322
333
|
## MCP-servere
|
|
323
334
|
|
|
324
|
-
| Server | Tools | Hvad den
|
|
335
|
+
| Server | Tools | Hvad den gør |
|
|
325
336
|
|--------|-------|---------------|
|
|
326
|
-
| **dk-bogfoerer** | 42 | Momsregler, skatteregler, kontoplan,
|
|
327
|
-
| **billy** | 26 | Billy.dk: banklinjer, fakturaer, regninger,
|
|
328
|
-
| **Gmail** | 6 | Email:
|
|
337
|
+
| **dk-bogfoerer** | 42 | Momsregler, skatteregler, kontoplan, lønsatser, deadlines, Retsinformation (lovtekst) |
|
|
338
|
+
| **billy** | 26 | Billy.dk: banklinjer, fakturaer, regninger, bogføring, momsopgørelse, bankafstemning |
|
|
339
|
+
| **Gmail** | 6 | Email: søg fakturaer, læs beskeder |
|
|
329
340
|
|
|
330
341
|
## Slash-commands
|
|
331
342
|
|
|
332
|
-
| Kommando | Hvad den
|
|
343
|
+
| Kommando | Hvad den gør |
|
|
333
344
|
|----------|--------------|
|
|
334
|
-
| \`/bogfoer\` | Konter og
|
|
335
|
-
| \`/gmail-bilag\` | Hent fakturaer fra Gmail og
|
|
336
|
-
| \`/bankafstem\` |
|
|
337
|
-
| \`/
|
|
338
|
-
|
|
339
|
-
| \`/
|
|
340
|
-
| \`/
|
|
345
|
+
| \`/bogfoer\` | Konter og bogfør et bilag i Billy |
|
|
346
|
+
| \`/gmail-bilag\` | Hent fakturaer fra Gmail og bogfør dem |
|
|
347
|
+
| \`/bankafstem\` | Gennemgå uafstemte banklinjer fra Billy |
|
|
348
|
+
| \`/match-bilag\` | Match banklinjer med Gmail-fakturaer og afstem automatisk |
|
|
349
|
+
| \`/momsopgoer\` | Beregn momstilsvar og klargør indberetning |
|
|
350
|
+
${ansatte ? "| `/loenkoersel` | Kør løn for medarbejdere |\n" : ""}| \`/aarsafslutning\` | Komplet årsafslutning med tjekliste |
|
|
351
|
+
| \`/deadline\` | Vis næste indberetningsfrister |
|
|
352
|
+
| \`/onboarding\` | Genkonfigurer bogføring |
|
|
341
353
|
|
|
342
354
|
## Agents
|
|
343
355
|
|
|
344
|
-
| Agent |
|
|
356
|
+
| Agent | Hvornår |
|
|
345
357
|
|-------|----------|
|
|
346
358
|
| **konterer** | Brugeren har et bilag/faktura/kvittering |
|
|
347
|
-
| **momsraadgiver** |
|
|
348
|
-
${ansatte ? "| **loenberegner** |
|
|
359
|
+
| **momsraadgiver** | Spørgsmål om moms, skat, lovregler |
|
|
360
|
+
${ansatte ? "| **loenberegner** | Lønkørsel, satser, personalegoder |\n" : ""}| **deadliner** | Frister og deadlines |
|
|
349
361
|
| **fejlfinder** | Tjek konteringer for fejl |
|
|
350
|
-
| **aarsafslutter** |
|
|
362
|
+
| **aarsafslutter** | Årsafslutning |
|
|
351
363
|
|
|
352
364
|
## Dispatcher
|
|
353
365
|
|
|
354
|
-
|
|
366
|
+
Når brugeren skriver noget:
|
|
355
367
|
1. Slash-command → aktiver den skill
|
|
356
368
|
2. Bilag/faktura/kvittering → **konterer**
|
|
357
|
-
3. Moms/skat-
|
|
358
|
-
${ansatte ? "4.
|
|
369
|
+
3. Moms/skat-spørgsmål → **momsraadgiver**
|
|
370
|
+
${ansatte ? "4. Løn → **loenberegner**\n" : ""}${ansatte ? "5" : "4"}. Frister → **deadliner**
|
|
359
371
|
${ansatte ? "6" : "5"}. Kontrol/gennemgang → **fejlfinder**
|
|
360
|
-
${ansatte ? "7" : "6"}.
|
|
372
|
+
${ansatte ? "7" : "6"}. Årsafslutning → **aarsafslutter**
|
|
361
373
|
${ansatte ? "8" : "7"}. Ellers → svar direkte med MCP-tools
|
|
362
374
|
|
|
363
375
|
## Denne virksomhed
|
|
364
376
|
|
|
365
377
|
- **Momsperiode:** ${mpKort} — frister via \`deadline_oversigt\`
|
|
366
378
|
- **Type:** ${vtKort.toUpperCase()}${vtKort === "emv" ? " — husk virksomhedsordningen (skat_virksomhedsordning)" : ""}${vtKort === "aps" || vtKort === "as" ? " — husk selskabsskat 22% (skat_selskab)" : ""}
|
|
367
|
-
${ansatte ? "- **Ansatte:** Ja —
|
|
379
|
+
${ansatte ? "- **Ansatte:** Ja — lønkørsel med A-skat/AM-bidrag" : "- **Ingen ansatte** — spring lønrelaterede tools over"}
|
|
368
380
|
- **Branche:** ${branche}
|
|
369
381
|
|
|
370
382
|
## Vigtige love (brug lov_paragraf)
|
|
371
383
|
|
|
372
384
|
- **Momsloven** (2024/209) — ML §13 (fritagelser), §37 (fradrag), §42 (restaurant/hotel)
|
|
373
|
-
- **
|
|
385
|
+
- **Bogføringsloven** (2022/700) — registrering, opbevaring, digitale krav
|
|
374
386
|
${vtKort === "emv" ? "- **Virksomhedsskatteloven** (2021/1836) — virksomhedsordningen\n" : ""}${vtKort === "aps" || vtKort === "as" ? "- **Selskabsskatteloven** (2025/279) — 22% selskabsskat\n" : ""}- **Kildeskatteloven** (2024/460) — A-skat, AM-bidrag
|
|
375
|
-
- **Ligningsloven** (2025/1500) — fradrag,
|
|
387
|
+
- **Ligningsloven** (2025/1500) — fradrag, kørselsgodtgørelse
|
|
376
388
|
|
|
377
389
|
## Hukommelse
|
|
378
390
|
|
|
379
|
-
Du har en lokal hukommelse i \`memory/\`-mappen. Den holder styr
|
|
391
|
+
Du har en lokal hukommelse i \`memory/\`-mappen. Den holder styr på ting du lærer om denne virksomhed.
|
|
380
392
|
|
|
381
393
|
### Automatisk opdatering
|
|
382
394
|
|
|
383
|
-
Efter HVER
|
|
395
|
+
Efter HVER bogføring eller rådgivning, tjek om du har lært noget nyt der bør gemmes:
|
|
384
396
|
|
|
385
|
-
- **Ny
|
|
386
|
-
- **Korrektioner:** Hvis brugeren retter din kontering, gem den korrekte kontering
|
|
387
|
-
- **
|
|
388
|
-
- **Beslutninger:** Hvis brugeren
|
|
397
|
+
- **Ny leverandør-kontering:** Første gang du konterer en faktura fra en leverandør, gem mappingen i \`memory/leverandoerer.json\`
|
|
398
|
+
- **Korrektioner:** Hvis brugeren retter din kontering, gem den korrekte kontering så du gør det rigtigt næste gang
|
|
399
|
+
- **Særlige regler:** Hvis virksomheden har specielle momsregler, delvis momsfradrag, eller andre undtagelser
|
|
400
|
+
- **Beslutninger:** Hvis brugeren træffer en beslutning om bogføringspraksis (f.eks. "vi bogfører altid kantineudgifter på 4230")
|
|
389
401
|
|
|
390
402
|
### Hukommelsesfiler
|
|
391
403
|
|
|
392
404
|
| Fil | Indhold |
|
|
393
405
|
|-----|---------|
|
|
394
|
-
| \`memory/leverandoerer.json\` |
|
|
406
|
+
| \`memory/leverandoerer.json\` | Leverandør → konto + momskode mapping |
|
|
395
407
|
| \`memory/konteringer.json\` | Typiske konteringer og korrektioner |
|
|
396
408
|
| \`memory/regler.json\` | Virksomhedsspecifikke regler og beslutninger |
|
|
397
|
-
| \`memory/log.json\` | Kronologisk log over
|
|
409
|
+
| \`memory/log.json\` | Kronologisk log over bogførte poster |
|
|
398
410
|
|
|
399
|
-
###
|
|
411
|
+
### Sådan bruger du hukommelsen
|
|
400
412
|
|
|
401
|
-
1. **
|
|
402
|
-
2. **Efter kontering:** Opdater \`memory/leverandoerer.json\` med nye
|
|
413
|
+
1. **Før kontering:** Læs \`memory/leverandoerer.json\` — kender du leverandøren? Brug den gemte kontering.
|
|
414
|
+
2. **Efter kontering:** Opdater \`memory/leverandoerer.json\` med nye leverandører og \`memory/log.json\` med posteringen.
|
|
403
415
|
3. **Ved korrektioner:** Opdater \`memory/konteringer.json\` med den korrekte kontering.
|
|
404
416
|
4. **Ved nye regler:** Opdater \`memory/regler.json\`.
|
|
405
417
|
|
|
@@ -419,10 +431,10 @@ Efter HVER bogfoering eller raadgivning, tjek om du har laert noget nyt der boer
|
|
|
419
431
|
"konteringer": [
|
|
420
432
|
{
|
|
421
433
|
"dato": "2026-04-02",
|
|
422
|
-
"hvad": "Brugeren rettede: restaurant-udgift var
|
|
434
|
+
"hvad": "Brugeren rettede: restaurant-udgift var bogført med fuld moms, skal være 25% fradrag",
|
|
423
435
|
"foer": { "konto": "4100", "momskode": "koeb_25" },
|
|
424
436
|
"efter": { "konto": "3700", "momskode": "rest_25pct_fradrag" },
|
|
425
|
-
"laering": "Restaurant/forplejning skal altid
|
|
437
|
+
"laering": "Restaurant/forplejning skal altid på 3700 med 25% momsfradrag"
|
|
426
438
|
}
|
|
427
439
|
]
|
|
428
440
|
}
|
|
@@ -471,9 +483,9 @@ Efter HVER bogfoering eller raadgivning, tjek om du har laert noget nyt der boer
|
|
|
471
483
|
}
|
|
472
484
|
// README
|
|
473
485
|
const readme = [
|
|
474
|
-
`# ${firmanavn || "
|
|
486
|
+
`# ${firmanavn || "Bogføring"}`,
|
|
475
487
|
"",
|
|
476
|
-
`| Felt |
|
|
488
|
+
`| Felt | Værdi |`,
|
|
477
489
|
`|------|--------|`,
|
|
478
490
|
`| CVR | ${cvr || "—"} |`,
|
|
479
491
|
`| Type | ${virksomhedstype} |`,
|
|
@@ -493,31 +505,31 @@ Efter HVER bogfoering eller raadgivning, tjek om du har laert noget nyt der boer
|
|
|
493
505
|
"/bogfoer # Konter et bilag",
|
|
494
506
|
"/gmail-bilag # Hent fakturaer fra email",
|
|
495
507
|
"/bankafstem # Afstem banklinjer",
|
|
496
|
-
"/momsopgoer #
|
|
497
|
-
...(ansatte ? ["/loenkoersel #
|
|
498
|
-
"/aarsafslutning #
|
|
508
|
+
"/momsopgoer # Klargør momsindberetning",
|
|
509
|
+
...(ansatte ? ["/loenkoersel # Kør løn"] : []),
|
|
510
|
+
"/aarsafslutning # Årsafslutning",
|
|
499
511
|
"/deadline # Vis frister",
|
|
500
512
|
"```",
|
|
501
513
|
"",
|
|
502
514
|
"## Mappestruktur",
|
|
503
515
|
"```",
|
|
504
516
|
"bilag/dump/ ← Smid filer her → dk-bogfoerer dump",
|
|
505
|
-
"bilag/indgaaende/ ←
|
|
517
|
+
"bilag/indgaaende/ ← Købsfakturaer",
|
|
506
518
|
"bilag/udgaaende/ ← Salgsfakturaer",
|
|
507
519
|
"bank/ ← Kontoudtog",
|
|
508
|
-
...(ansatte ? ["loen/ ←
|
|
520
|
+
...(ansatte ? ["loen/ ← Lønsedler"] : []),
|
|
509
521
|
"moms/ ← Momsindberetninger",
|
|
510
|
-
"aarsafslutning/ ←
|
|
522
|
+
"aarsafslutning/ ← Årsregnskab",
|
|
511
523
|
"rapporter/ ← Perioderegnskaber",
|
|
512
524
|
"```",
|
|
513
525
|
].join("\n");
|
|
514
526
|
await writeFile(join(target, "README.md"), readme, "utf-8");
|
|
515
527
|
await writeFile(join(target, ".gitignore"), "config.json\n*.billy.json\n.processed/\n", "utf-8");
|
|
516
|
-
console.log(` ✓
|
|
528
|
+
console.log(` ✓ Bogføringsmappe oprettet: ${target}`);
|
|
517
529
|
// ─── Opsummering ───
|
|
518
530
|
console.log(`
|
|
519
531
|
╔══════════════════════════════════════════════════╗
|
|
520
|
-
║ Setup
|
|
532
|
+
║ Setup færdig! ║
|
|
521
533
|
╚══════════════════════════════════════════════════╝
|
|
522
534
|
|
|
523
535
|
Firma: ${firmanavn || "—"}
|
|
@@ -528,13 +540,13 @@ Efter HVER bogfoering eller raadgivning, tjek om du har laert noget nyt der boer
|
|
|
528
540
|
Billy: ${billyToken ? "✓ Forbundet" : "✗ Ikke forbundet"}
|
|
529
541
|
Gmail: ${gmailConfigured ? "✓ Aktiv" : "○ Ikke aktiveret (brug /mcp i Claude Code)"}
|
|
530
542
|
|
|
531
|
-
|
|
543
|
+
Bogføringsmappe: ${target}
|
|
532
544
|
|
|
533
|
-
|
|
534
|
-
1. Genstart Claude Code (luk og
|
|
545
|
+
Næste skridt:
|
|
546
|
+
1. Genstart Claude Code (luk og åben igen)
|
|
535
547
|
2. Smid fakturaer i: ${join(target, "bilag/dump/")}
|
|
536
|
-
3.
|
|
537
|
-
4. Eller
|
|
548
|
+
3. Kør: dk-bogfoerer dump ${join(target, "bilag/dump/")}
|
|
549
|
+
4. Eller åbn Claude Code og skriv /bogfoer
|
|
538
550
|
`);
|
|
539
551
|
rl.close();
|
|
540
552
|
}
|
|
@@ -549,7 +561,7 @@ async function cmdInit(targetPath) {
|
|
|
549
561
|
console.log(` ✓ Billy: ${orgName}`);
|
|
550
562
|
}
|
|
551
563
|
catch {
|
|
552
|
-
console.log(" ⚠ Billy ikke forbundet.
|
|
564
|
+
console.log(" ⚠ Billy ikke forbundet. Kør 'dk-bogfoerer setup' først.");
|
|
553
565
|
}
|
|
554
566
|
const dirs = ["bilag/indgaaende", "bilag/udgaaende", "bilag/dump", "bank", "loen", "moms", "aarsafslutning", "rapporter"];
|
|
555
567
|
for (const dir of dirs)
|
|
@@ -572,7 +584,7 @@ async function cmdDump(dumpPath) {
|
|
|
572
584
|
}
|
|
573
585
|
catch (e) {
|
|
574
586
|
console.error(` ${e.message}`);
|
|
575
|
-
console.error("
|
|
587
|
+
console.error(" Kør 'dk-bogfoerer setup' først.");
|
|
576
588
|
process.exit(1);
|
|
577
589
|
}
|
|
578
590
|
const entries = await readdir(target);
|
|
@@ -623,7 +635,7 @@ async function cmdDump(dumpPath) {
|
|
|
623
635
|
Uploaded: ${uploaded} | Fejlede: ${failed}
|
|
624
636
|
Filer flyttet til: ${processedDir}
|
|
625
637
|
|
|
626
|
-
|
|
638
|
+
Åbn Claude Code og skriv /bogfoer for at kontere filerne.
|
|
627
639
|
`);
|
|
628
640
|
}
|
|
629
641
|
// ─── STATUS command ───
|
|
@@ -637,7 +649,7 @@ async function cmdStatus() {
|
|
|
637
649
|
console.log(` Valuta: ${org.baseCurrencyId ?? "DKK"}`);
|
|
638
650
|
console.log(` Billy ID: ${org.id}`);
|
|
639
651
|
const daybooks = await getDaybooks();
|
|
640
|
-
console.log(`
|
|
652
|
+
console.log(` Dagbøger: ${daybooks.length} stk`);
|
|
641
653
|
for (const db of daybooks) {
|
|
642
654
|
console.log(` - ${db.name} (${db.id})`);
|
|
643
655
|
}
|
|
@@ -645,7 +657,7 @@ async function cmdStatus() {
|
|
|
645
657
|
}
|
|
646
658
|
catch (e) {
|
|
647
659
|
console.error(` ✗ ${e.message}`);
|
|
648
|
-
console.error("
|
|
660
|
+
console.error(" Kør 'dk-bogfoerer setup' for at konfigurere.\n");
|
|
649
661
|
}
|
|
650
662
|
}
|
|
651
663
|
// ─── DEADLINES command ───
|
|
@@ -653,8 +665,8 @@ async function cmdDeadlines() {
|
|
|
653
665
|
const today = new Date().toISOString().slice(0, 10);
|
|
654
666
|
console.log(`\n dk-bogfoerer deadlines (${today})\n`);
|
|
655
667
|
const deadlines = [
|
|
656
|
-
{ frist: "2026-09-01", beskrivelse: "Moms: 1.
|
|
657
|
-
{ frist: "2027-03-01", beskrivelse: "Moms: 2.
|
|
668
|
+
{ frist: "2026-09-01", beskrivelse: "Moms: 1. halvår 2026" },
|
|
669
|
+
{ frist: "2027-03-01", beskrivelse: "Moms: 2. halvår 2026" },
|
|
658
670
|
{ frist: "2026-05-11", beskrivelse: "A-skat/AM-bidrag: April" },
|
|
659
671
|
{ frist: "2026-06-10", beskrivelse: "A-skat/AM-bidrag: Maj" },
|
|
660
672
|
{ frist: "2026-07-10", beskrivelse: "A-skat/AM-bidrag: Juni" },
|
|
@@ -665,9 +677,9 @@ async function cmdDeadlines() {
|
|
|
665
677
|
{ frist: "2026-12-10", beskrivelse: "A-skat/AM-bidrag: November" },
|
|
666
678
|
{ frist: "2026-11-20", beskrivelse: "Selskabsskat: 2. aconto-rate" },
|
|
667
679
|
{ frist: "2026-05-01", beskrivelse: "Privat selvangivelse" },
|
|
668
|
-
{ frist: "2026-05-31", beskrivelse: "
|
|
680
|
+
{ frist: "2026-05-31", beskrivelse: "Årsrapport til Erhvervsstyrelsen" },
|
|
669
681
|
{ frist: "2026-06-30", beskrivelse: "Selskabsselvangivelse" },
|
|
670
|
-
{ frist: "2026-07-01", beskrivelse: "Udvidet selvangivelse (
|
|
682
|
+
{ frist: "2026-07-01", beskrivelse: "Udvidet selvangivelse (selvstændige)" },
|
|
671
683
|
];
|
|
672
684
|
const kommende = deadlines
|
|
673
685
|
.filter((d) => d.frist >= today)
|
|
@@ -714,10 +726,10 @@ async function main() {
|
|
|
714
726
|
printHelp();
|
|
715
727
|
break;
|
|
716
728
|
case undefined:
|
|
717
|
-
//
|
|
729
|
+
// Første gang? Kør setup
|
|
718
730
|
if (!existsSync(join(process.env.HOME ?? "~", ".claude.json")) ||
|
|
719
731
|
!process.env.BILLY_API_TOKEN) {
|
|
720
|
-
console.log("\n Velkommen!
|
|
732
|
+
console.log("\n Velkommen! Kører førstegangsopsætning...\n");
|
|
721
733
|
await cmdSetup();
|
|
722
734
|
}
|
|
723
735
|
else {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|