A simple CLI Client

I would like to make a simple CLI to quickly add tasks and subtasks without using the browser, so I have a few questions:

  1. Is there a good way to authenticate via OIDC when calling a script (e.g. Google has a workflow where you can quickly authenticate an external application from the browser)?
    I looked in the API docs, but these seem to require already having made a call to the provider. Basically I want to prompt the user to login and then get the token out somehow, without having to copy it from the network log.
  2. Is the handling of quick add magic available in the api, and if not could that be made available there?

But maybe, somebody has built something like this already, or even a generalized task cli (thinking about something like a taskwarrior integration, which already has lots of magic handling I think…) one could build upon.
I would be astonished if all the power-users here work solely from the browser with this great application :wink:

1 Like

I think most other cli clients (like the stripe cli, for example) solve this by starting a web server and authenticating in the browser, then save the obtained api token to some place where the cli can access it.

Right now it’s not implemented in the api. It will be at some point though.

Hey @xeruf !

Did you manage to make the CLI ?
I would love to have a quicker way to add tasks to Vikunja without opening and navigating to my instance :smiley:

I put some work recently into a command line client for Vikunja. It’s written in python.

While it still lacks some features, especially concerning grouping and sorting of output, I think it might be worth to give it a try.