Kanban StudioMarkdown & JSON Reference
📝

Markdown & JSON Reference

Full schema reference for board editing

Przegląd

Za każdą tablicą Kanban znajduje się klarotekstowy dokument, który można przeczytać, napisać, kopiować i sprawdzić. Dokument ten składa się z dwóch części: czytelny blok strukturyzowany, zawierający dane z tablicy jako JSON, i wolny blok dla Twoich osobistych notatek.

Schemat (v)1JSON + MarkdownSprzedawcy
💡

Zawsze najpierw przeprowadź suchy bieg.

Zanim klikniesz przejmij, użyj przycisku Próbka, aby potwierdzić zmiany. Backend zgłasza błędy i podsumowanie różnic bez zmiany płyty.

Struktura dokumentów

Cały dokument Kanban Markdown składa się z trzech części::

  • Przeczytywane przez ludzi nagłówki (nazwa tablicy, notatka generująca)
  • Strukturyzowany blok Dane JSON pomiędzy znakami komentarza HTML
  • Bezpłatny markdown (powiadomienia, wykresy żółwicy, linki))
board.md
# My Project Board

Generated by Kanban Markdown schema v1.

<!-- KANBAN:STRUCTURED:START -->
```kanban-structured
{
  "version": 1,
  "board": {
    "id": "board-abc123",
    "title": "My Project Board"
  },
  "columns": [
    { "id": "col-1", "title": "Backlog",     "color": "#64748b", "order": 0 },
    { "id": "col-2", "title": "In Progress", "color": "#6366f1", "order": 1 },
    { "id": "col-3", "title": "Done",        "color": "#10b981", "order": 2 }
  ],
  "tasks": [
    {
      "id": "task-1",
      "columnId": "col-2",
      "position": 0,
      "title": "Build authentication flow",
      "description": "Implement JWT login, register, and token refresh.",
      "priority": "high",
      "tags": ["backend", "security"],
      "assigneeIds": ["member-uuid-1"],
      "mentionMemberIds": ["member-uuid-2"],
      "estimatePoints": 5,
      "dueDate": "2025-03-15",
      "plannedStartAt": "2025-03-10",
      "plannedEndAt": "2025-03-15",
      "timeboxMinutes": 90,
      "isCompleted": false,
      "archivedAt": null,
      "checklist": [
        { "title": "Design DB schema",   "isDone": true  },
        { "title": "Write unit tests",   "isDone": false },
        { "title": "Deploy to staging",  "isDone": false }
      ]
    }
  ]
}
```
<!-- KANBAN:STRUCTURED:END -->

<!-- KANBAN:CUSTOM:START -->
## Team Notes

- Sprint ends Friday
- Backend review at 3 PM

```mermaid
flowchart LR
  A[Backlog] --> B[In Progress] --> C[Done]
```
<!-- KANBAN:CUSTOM:END -->
Pełny dokument tablicy zawierający uwagi na wszystkie sekcje
⚠️

Nie usuwaj komentarzy

Znaczniki <!-- KANBAN:STRUCTURED:START -->, <!-- KANBAN:STRUCTURED:END -->, <!-- KANBAN:CUSTOM:START --> i <!-- KANBAN:CUSTOM:END --> są niezbędne. Zdejmowanie prowadzi do błędu analitycznego.

Kolumny

Kolumny określają etapy pracy płyty. Od lewej do prawej, przez order-Wartość zwrócona.

JSON
"columns": [
  { "id": "col-1", "title": "To Do",       "color": "#64748b", "order": 0 },
  { "id": "col-2", "title": "In Progress", "color": "#6366f1", "order": 1 },
  { "id": "col-3", "title": "Review",      "color": "#f59e0b", "order": 2 },
  { "id": "col-4", "title": "Done",        "color": "#10b981", "order": 3 }
]
Przykład: cztery kolumny o różnych kolorach
FieldTypeRequiredDescription
idstringYesJednoznaczne oznakowanie kolumn (UUID lub dowolny stabilny slug))
titlestringYesNazwa kolumny wyświetlana w tabeli
colorstringYesKolumnę akcenty kolumny (hex)). Wyświetla się po lewej stronie map
orderintegerYesSterowanie wyświetlaczy oparte na zero (wzrastające, z lewej do prawej))
ℹ️

Note

Id identyfikatorów kolumn muszą być jednoznaczne w obrębie tablicy. Wykonywane zadania odnoszą się do kolumn w oparciu o id.

Zadania

Zadania są podstawową jednością pracy. Każde z zadań znajduje się w kolumnie (powyżej columnId) i jest w tej kolumnie po position Sorty.

Minimalne zadanie

JSON
{
  "id": "task-abc",
  "columnId": "col-1",
  "position": 0,
  "title": "Write release notes",
  "description": "",
  "priority": "medium",
  "tags": [],
  "assigneeIds": [],
  "mentionMemberIds": [],
  "estimatePoints": null,
  "dueDate": null,
  "plannedStartAt": null,
  "plannedEndAt": null,
  "timeboxMinutes": null,
  "isCompleted": false,
  "archivedAt": null,
  "checklist": []
}
Tylko obowiązkowe pola wypełnione wszystkie opcjonalne pola są zerowe/puste

Kompletne zadanie we wszystkich dziedzinach

JSON
{
  "id": "task-xyz",
  "columnId": "col-2",
  "position": 0,
  "title": "Redesign checkout page",
  "description": "Full UX overhaul based on user research findings.",
  "priority": "critical",
  "tags": ["ux", "frontend", "q1-goal"],
  "assigneeIds": ["member-alice", "member-bob"],
  "mentionMemberIds": ["member-pm"],
  "estimatePoints": 8,
  "dueDate": "2025-04-01",
  "plannedStartAt": "2025-03-20",
  "plannedEndAt": "2025-04-01",
  "timeboxMinutes": 120,
  "isCompleted": false,
  "archivedAt": null,
  "checklist": [
    { "title": "User interviews",       "isDone": true  },
    { "title": "Wireframes approved",   "isDone": true  },
    { "title": "Implement components",  "isDone": false },
    { "title": "A/B test live",         "isDone": false }
  ]
}
Przykład produkcji z priorytetem, tagami, podmiotami, listą kontrolną, czasopismem
FieldTypeRequiredDescription
idstringYesJednoznaczna identyfikacja zadań (UUID lub Stable Slug))
columnIdstringYesID kolumny, do której należy to zadanie
positionintegerYesSorty 0 w kolumnie
titlestringYesTytuł zadań (1280 znaków))
descriptionstringNoDłuższy opis zgodny z markdownem
priorityenum
"low""medium""high""critical"
NoStopień pilności zadania
tagsstring[]NoSekwencje znaków dla filtrowania i grupowania
assigneeIdsstring[]NoIdentyfikaty członków osób przypisanych do tej misji
mentionMemberIdsstring[]NoW tym zadaniu wymienione (przekazane) identyfikaty członków
estimatePointsinteger|nullNoSzacunek w punkcie historii (Fibonacci): 1, 2, 3, 5, 8, 13…)
dueDatestring|nullNoISO 8601 Sekwencja znaków daty: JJJJ-MM-TT
plannedStartAtstring|nullNoISO 8601 Data/godzina: planowany start
plannedEndAtstring|nullNoISO 8601 Data/godzina: zakończenie planowane
timeboxMinutesinteger|nullNoDługość sesji spotkań w zakresie timeboxingu
isCompletedbooleanNoWyznacza, że zadanie zostało zakończone (dodaj przepływ w interfejsie użytkownika))
archivedAtstring|nullNoISO 8601 Data i godzina archiwizacji zadań. Archiwizowane zadania są pominięte w tablicazie
checklistobject[]NoElementy listy kontrolnej podzadania (patrz sekcja checklist)“)

Elementy listy kontrolnej

Każda z zadań obsługuje płaską listę elementów listy kontrolnej proste podzadania, które mogą być oznaczone jako wykonane indywidualnie bez konieczności tworzenia oddzielnych zadań.

JSON
"checklist": [
  { "title": "Design mockup",   "isDone": true  },
  { "title": "Code review",     "isDone": false },
  { "title": "Deploy to prod",  "isDone": false }
]
Trzy punkty kontrolne: pierwszy wykonywany, dwa pozostałe
FieldTypeRequiredDescription
titlestringYesOznaczenie elementu listy kontrolnej (1255 znaków))
isDonebooleanYesCzy ten punkt jest wycięty

Sekcja Notice użytkownika“.

Wszystko pomiędzy <!-- KANBAN:CUSTOM:START --> i <!-- KANBAN:CUSTOM:END --> jest to twój blok notatny. Wspiera pełne wykresy Markdown i Mermaid. Treść jest wyświetlana przez maszynę "tablica" ne-pasted wyświetla się tylko w tablicy Preview.

Markdown
<!-- KANBAN:CUSTOM:START -->
## Sprint Notes

- Daily standup at 10:00 AM
- Backend API freeze on Friday

```mermaid
gantt
  title Sprint 12
  section Tasks
  Auth flow     :done, 2025-03-10, 3d
  Dashboard UI  :active, 2025-03-13, 4d
  API docs      :2025-03-17, 2d
```

> Reminder: update JIRA tickets before end of day.
<!-- KANBAN:CUSTOM:END -->
Notatki z grafą Mermaid-Gantt
💡

Tip

Wykorzystaj sekcję Userdefined do notatek sprintów, linków zespołowych, wykresów Gantt, wykresów architektonicznych wszystko, co chcesz zobaczyć oprócz danych z tablicy.

Priorytetowe wartości

Połączenie priority Akceptuje dokładnie jedną z czterech wartości. Każdy z nich jest przypisany do określonego koloru znaku w interfejsie użytkownika.:

FieldTypeRequiredDescription
lowenum valueNoMała pilność. Wyświetlone w szczycie/grzew.
mediumenum valueNoStandardowe. Wystosowane w żółtym kolorze. Odrzucanie priorytetu jest standardem.
highenum valueNoWażne. W orangi.
criticalenum valueNoZablokowanie. Wyświetlone w czerwonym/rosym.

Zadania archiwizacyjne

Aby archiwować zadanie, wprowadź pole archivedAt do sekwencji znaków ISO daty/godziny. Archiwizowane zadania są wykluczone z aktywnego przeglądu, ale pozostają w toku.

JSON
{
  "id": "task-old",
  "columnId": "col-1",
  "position": 99,
  "title": "Old completed task",
  "archivedAt": "2025-01-10T14:30:00.000Z",
  ...
}
Archiwizowane zadanie wyłączone z tablicy, uzyskane w zdjęciu
ℹ️

Note

Jeśli ustawisz archivedAt na zero, archiwacja zadania zostanie usunięta. Podsumowanie Diff wykazuje tasksToArchive, gdy używany jest markdown archiwujący aktualnie aktywne zadania na brzegu.

Badanie i diagnoza

Funkcja próbkowa potwierdza odliczenie bez zmian. Z powrotem diffSummary (co by się zmieniło) i diagnostics-Arry powrotnej, która zawiera listę błędów lub ostrzeżeń.

Sukcesyjna reakcja próbna

JSON
{
  "ok": true,
  "dryRun": true,
  "diagnostics": [],
  "diffSummary": {
    "columnsCreated": 1,
    "columnsTouched": 2,
    "tasksCreated": 3,
    "tasksTouched": 5,
    "tasksToArchive": 0
  }
}
ok: true oznacza, że odsetka jest ważna i bezpiecznie stosowana

Przebieg próbny z błędami

JSON
{
  "ok": false,
  "dryRun": true,
  "diagnostics": [
    {
      "code": "unknown_column_id",
      "message": "Task 'task-xyz' references unknown column 'col-999'.",
      "line": 42,
      "severity": "error"
    },
    {
      "code": "duplicate_task_id",
      "message": "Task ID 'task-abc' is used more than once.",
      "line": 67,
      "severity": "error"
    }
  ],
  "diffSummary": {
    "columnsCreated": 0,
    "columnsTouched": 0,
    "tasksCreated": 0,
    "tasksTouched": 0,
    "tasksToArchive": 0
  }
}
ok: false naprawić błędy przed stosowaniem
FieldTypeRequiredDescription
codestringYesKode błędu czytelnego maszynowo (z. B. nieznany_Spalten_ID)
messagestringYesOpis problemu, czytelny dla ludzi
lineintegerYesPrzybliżony numer linii w dokumencie markdown
severityenum
"error""warning"
YesBłąd (zawiera się blokady) lub strzeżenie (wykorzystuje dochody))
🚫

Blokują błędy Apply

Jeśli w diagnozie znajduje się element o znaczeniu błędu, proces aplikacji odmawia kontynuacji. Ostrzeżenia mają charakter doradczy i nie blokują.

Zalecany przepływ pracy

Wykonaj tę procedurę, gdy pracujesz nad tablicą poprzez markdown:

  • Otwórz panel markdown na swojej desce
  • Edytuj JSON w Strukturyzowanym bloku dodaj kolumny lub zadania/zmianuj je
  • Kliknij dry run, aby zweryfikować bez zmian
  • Rozwiązać wszystkie błędy w liście diagnostycznej
  • Kliknij Akceptuj, aby dokonać zmian na płytce żywej
  • Wykorzystaj Pobierz do lokalnego .md-Przechowywanie kopii zapasowej
💡

Wskazówka do kontroli wersji

Ponieważ dokument jest czystym tekstem, można go wstawić do repozytorium Git, odróżnić wersje i przywrócić wcześniejszy status tablicy poprzez ponowne zastosowanie starszego zdjęcia.

Schema v1 · Updated September 2026