HomeVideos

Backlog.md: Terminal Kanban Board for Managing Tasks with AI Agents — Alex Gavrilescu, Funstage

Now Playing

Backlog.md: Terminal Kanban Board for Managing Tasks with AI Agents — Alex Gavrilescu, Funstage

Transcript

312 segments

0:00

Have you ever had your agent working for

0:02

almost one hour only to understand that

0:05

he went in the wrong direction or in the

0:08

middle of something very important he

0:10

ran out of context window? Me too.

0:13

That's why in the last months I

0:15

developed a workflow that consists in

0:18

dividing a big feature into smaller

0:20

markdown tasks.

0:23

Hi, I'm Alex Gavesco and I'm going to

0:26

present backlog MD, a tool for project

0:28

management for AI agents and humans.

0:33

Okay, let's start. So, have you ever

0:36

seen a terminal cand board? Well, when I

0:39

started working on backlog MD, I

0:41

couldn't find any. So, I had to build it

0:44

myself. We have a full comban board

0:47

directly in your terminal. And here we

0:50

can see our tasks for the current

0:53

project. And we can actually see the

0:56

details of the task directly in our

0:58

terminal. We can see the description and

1:01

acceptance criterias of tasks that are

1:03

still to be uh developed. We have the in

1:06

progress and the done columns as well

1:09

where we can see what has been

1:10

implemented. In this case, we can see

1:13

the acceptance criterias were

1:14

implemented and someone left some

1:17

implementation notes. But one of the

1:19

features I always wanted to have in

1:21

Backlog MD is the ability to move tasks

1:24

between status columns and to reorder

1:27

tasks within the same column. So let's

1:30

build it with cloud code.

1:33

Before we can build it with cloud code,

1:35

we need to have clear requirements.

1:38

This is important for humans but also

1:40

for AI agents. So first thing to do is

1:44

to we want to press M to toggle the move

1:46

mode. Then the current task will be

1:48

highlighted and we know which task is

1:51

going to be moved. We can use the arrow

1:54

keys up and down to move the task within

1:57

the same column and change the its

1:58

order. Or we can go left and right and

2:02

this will change the status of the task.

2:05

If we press M or enter, we will commit

2:08

this move. And if we want to cancel, we

2:10

will press ask. And the user should be

2:13

informed uh how this functionality works

2:16

by showing the button in the footer.

2:20

So let's have cloud actually implement

2:23

the task uh uh the task. But first the

2:26

task has to be created. So we tell given

2:30

this requirements to create a task.

2:34

Now clude the first thing that it will

2:37

do is going to search for existing

2:39

tasks.

2:41

Actually the first thing that he does he

2:43

needs to understand how backlog works

2:44

and what is backlog because clude acts

2:47

as a developer that has been re uh just

2:50

on boarded on our project and needs to

2:52

understand how our project works. So he

2:55

first reads about backlog and then he

2:58

reads about how to create tasks

3:00

correctly.

3:01

Afterwards he creates the task. We can

3:04

see here the task has been completed and

3:07

now let's check uh what we what is

3:10

there. So this is how it looks. Backlog

3:14

empty tasks are stored as markdown files

3:16

in your repository. We have a front

3:19

matter section with meta task metadata

3:22

such as task ID, title, labels and other

3:26

metadata fields. We have the description

3:29

and let's read if Claude uh actually

3:31

understood why what is the purpose of

3:33

this task.

3:35

Add the move mode feature in the twoe

3:38

comban board that allows users to

3:40

interactively reorder tasks within

3:43

columns and move tasks between status

3:46

columns using keyboard navigation. This

3:49

provides a more intuitive way to

3:51

reorganize tasks without needing to use

3:54

CLI commands or edit files directly. So

3:57

we can confirm that cloud really

3:59

understand why we want to build this

4:02

feature. The next section of backlog

4:04

tasks is the acceptance criteria.

4:08

And here we can have really clear uh

4:12

acceptance criteria that define how the

4:16

task the feature should behave and they

4:19

should be testable and easily uh

4:22

verifiable.

4:25

This is uh this is the first review

4:27

point. This is the moment where you can

4:29

actually understand if the AI agent has

4:32

understood your intent and will do a

4:35

good task.

4:38

The next step is the implementation

4:40

plan. So we want the AI agent to come up

4:44

with an implementation plan because he

4:48

must understand really well the

4:50

description and the acceptance criteria.

4:53

It can uh check the documentation and

4:57

internet and search also the existing

4:59

codebase to understand where to put this

5:02

feature

5:04

and then at the end it will write an

5:06

implementation plan. So let's have this

5:08

done actually by cloud.

5:11

So we give him the instruction to create

5:13

an implementation plan according to

5:15

backlog MD workflow for the task that he

5:17

just it just created.

5:20

So we wait a bit. Uh this will take some

5:24

time. Of course he has to really uh find

5:27

what files have to be edited. Maybe look

5:30

up on the internet for some

5:31

documentation and existing documentation

5:34

in our project. In the meantime, let's

5:36

explain how this works under the hood.

5:40

So backlog MD uses uh an MCP server to

5:45

expose information instructions for the

5:48

M for the AI agents but also tools. The

5:51

most important part is the resources. So

5:55

this is a special feature of MCP that

5:57

backlog MD uses to instruct the agents

6:00

how to use backlog MD. The first

6:02

resource is the workflow overview. Here

6:05

we're telling the AI agents what is

6:07

backlog and what can be used for.

6:11

And also this overview will present the

6:13

next resources that are available which

6:15

are the task creation guide letting the

6:18

AI agents know how to create tasks and

6:21

what fields are required and which ones

6:22

are optional.

6:24

the task execution guide. When an AI

6:27

agents want to implement the task, what

6:29

should be done at this point? Such as

6:32

putting the task into in progress uh

6:34

status and assigning the tasks to

6:36

themsel. And the last guide is about

6:40

completing a task and uh checking the

6:43

acceptance criterias if they are all

6:45

actually implemented correctly and

6:48

checking all of the other requirements

6:50

for the definition of done that we

6:52

specified.

6:54

And then how can agents use backlog?

6:57

Well, via MCP tools. So backlog MD

7:00

server will expose certain tools for

7:03

their agents so that they can run

7:05

backlog commands directly and natively.

7:09

For example, one of them is searching

7:11

tasks. Before creating new task, AI

7:14

agents should search if that task

7:16

already exists.

7:19

It should they should be able to view

7:21

the details of these tasks. They should

7:23

be able to create tasks and update tasks

7:27

and update their acceptance criteria and

7:29

put them into them.

7:31

Okay, let's continue. Now, uh hopefully

7:36

cloud finished creating the

7:37

implementation plan. So, let's check

7:39

what we have.

7:41

So, we have an architecture overview. We

7:44

have implementation steps and then he

7:47

actually starts enumerating which files

7:50

should be touched and modified and the

7:54

how. And here we have the the second and

7:58

most important review step. This is the

8:00

moment where a senior software engineer

8:03

can really understand if the agent is

8:05

going is the in the right direction. So

8:08

it is very important at this point to

8:10

double check if everything is all right.

8:12

So now uh for the purpose of this

8:15

presentation let's go directly to the

8:18

implementation part.

8:21

So for the execution we want to have the

8:23

agent write the code for us. So Cloex

8:28

or Gemini or Kuso they can all work with

8:31

backlog MD and they should learn about

8:34

the task the description the acceptance

8:36

criteria and the plan

8:40

and what does develop the feature means

8:42

means implement all of the acceptance

8:44

criterias and putting the task into done

8:47

when the definition of done is

8:49

fulfilled.

8:51

So, let's have Claude actually implement

8:53

it.

8:56

This is going to take a while. So, we're

8:58

going to pause this video and come back

8:59

when Claude has finished and we're done.

9:04

Uh before checking um what Claude has

9:07

implemented, let's have a quick review

9:10

of the backlog workflow. So, as a human,

9:14

I want to create tasks. I want to

9:17

develop features in my project. So

9:19

normally I could create task directly

9:22

using backlog CLI commands but it is

9:25

more convenient if we ask our AI agent

9:27

to do it for us. So we can have a human

9:32

description about what we want to

9:33

implement and the AI agent will run the

9:36

backlog commands to create the task and

9:38

to fill the the sections that are

9:41

needed. And when the task is created, we

9:45

can tell an agent something as simple

9:47

as, "Hey Claude, can you please

9:49

implement task 316?"

9:52

And he will do it.

9:54

So let's see what Claude has

9:57

implemented.

9:59

So we have our terminal here with our

10:02

new comban board and we can immediately

10:04

spot a new command M to move. So let's

10:08

uh press this button.

10:12

You can see the task has been

10:13

highlighted and I can go up and down and

10:16

the task is being moved. And we can also

10:20

hopefully yes go to the new status

10:22

column.

10:24

So we can commit or we can cancel. Let's

10:27

cancel because we don't want to move

10:29

this task. But for example,

10:32

let's try uh the task that has been just

10:35

implemented. So this is the task 316.

10:40

Let's say there was a problem and not

10:42

everything has been implemented

10:44

correctly. Let's move it back in

10:45

progress.

10:51

And it works. It has been successfully

10:55

moved to in progress column. So this is

10:58

an example of how you can use backlog MD

11:00

with your favorite AI agent and you can

11:03

have a task implemented correctly

11:06

according to your specs in few minutes.

11:08

But why does this work so well? Having

11:11

markdown tasks stored in your repo

11:14

allows you to do a sort of context

11:16

engineering which means you can define

11:19

how much an AI agent should implement

11:22

within a single task so that he doesn't

11:24

run out of their context window and you

11:28

know exactly what will be implemented

11:30

and they don't implement extra features

11:32

that are not wanted and since you we are

11:35

using smaller atomic tasks if something

11:39

goes wrong Um with each of these with

11:42

any of these tasks you can roll back

11:45

change the specs the acceptance criteria

11:48

the description and ask the AI agent to

11:51

start again from the implementation

11:52

plan.

11:54

The scope is well defined. So you can

11:57

really define with using the acceptance

12:00

criteria what should be part of this

12:02

feature and what should be not part of

12:04

this feature. And the tests um if you

12:08

run unit test they should also uh check

12:11

if the acceptance criteria as are met

12:15

and it will allow this three review uh

12:19

process that I just showed to you. The

12:20

first review checkpoint is after the

12:23

task is created. You can check the

12:25

description and the acceptance criteria

12:27

if the agents understood your intent.

12:29

Then you can review the implementation

12:32

plan. You can see if the agent is going

12:35

into the right direction and at the end

12:37

you will review the code.

12:41

You can also work on multiple tasks in

12:44

parallel using git works

12:46

given that there are no dependencies. So

12:49

what is backlog?

12:51

It's an open-source MIT CLI tool. It has

12:55

a terminal user interface but also web

12:58

interface.

13:00

AI agents can interact via CLI commands

13:03

or via MCP. MCP is the preferred native

13:07

way, but we also support CLI commands

13:10

for legacy AI agents.

13:14

It is crossplatform. It works on most

13:16

famous operating systems

13:20

and you don't need any extra APIs or

13:22

tools or databases or accounts. As long

13:25

as you uh host all of the tasks on your

13:28

Git repository, you can share them with

13:30

your team and all of the tasks are in

13:33

sync, which means that backlog checks

13:35

the status of a task even if this task

13:37

has been updated on another branch.

13:42

And most important part, backlog code

13:45

has been written 99% by AI agents. The

13:49

only co only part of the project that I

13:51

written myself were the instructions and

13:54

the first three tasks.

13:57

Thank you very much for your attention.

13:59

If you want to know more about backlog

14:01

andd or experiment with it, you can

14:04

visit backlog.mmd in your browser. If

14:07

you have any comments, please reach out

14:10

to me and I will be happy to help you on

14:13

board uh with backlog MD. Bye.

Interactive Summary

Alex Gavesco presents Backlog MD, a terminal-based project management tool designed for collaboration between humans and AI agents. The tool uses Markdown files stored in a Git repository to define tasks, acceptance criteria, and implementation plans, allowing AI agents to understand project context without exhausting their context window. By breaking down projects into smaller, atomic tasks, Backlog MD enables a multi-stage review process, ensuring agents follow user intent through task creation, planning, and execution phases. The project itself was built almost entirely by AI.

Suggested questions

3 ready-made prompts