A Neorg module for extracting and aggregating tasks from your journal entries.
- Extract tasks from journal entries by anchor name
- Aggregate tasks across multiple journal files
- Generate summary files with dated task lists
- Works with Neorg's nested journal structure (
journal/YYYY/MM/DD.norg)
Plug 'nvim-neorg/neorg'
Plug 'paulefoe/neorg-harvest'{
"nvim-neorg/neorg",
dependencies = {
"paulefoe/neorg-harvest",
},
}Add the module to your Neorg configuration:
require("neorg").setup({
load = {
["core.defaults"] = {},
["core.dirman"] = {
config = {
workspaces = {
notes = "~/notes",
},
},
},
["core.journal"] = {
config = {
strategy = "nested", -- Uses YYYY/MM/DD.norg structure
},
},
-- Add the harvest module
["external.harvest"] = {
config = {
-- Optional: specify workspace (defaults to current)
workspace = nil,
-- Optional: journal folder name (defaults to "journal")
journal_folder = "journal",
},
},
},
}):Neorg harvest <anchor> <date>Harvest tasks for a month (current year):
:Neorg harvest Work DecemberHarvest tasks for a specific date range:
:Neorg harvest ProjectA 2025-12-01 2025-12-31Given journal entries like this:
journal/2025/12/01.norg:
** Today's Tasks
- (x) Work
-- (x) Review pull request
-- (x) Update documentation
- ( ) Exercise
- (x) Read a book
journal/2025/12/02.norg:
** Today's Tasks
- (x) Work
-- (x) Fix bug in API
-- (x) Deploy to production
Running :Neorg harvest Work December will:
- Scan all
.norgfiles injournal/2025/12/ - Find list items that match "Work" exactly
- Extract only the nested children (the
--items, not siblings) - Create a summary file at
journal/2025/12/harvest_Work.norg
Output:
01.12.2025 Review pull request
01.12.2025 Update documentation
02.12.2025 Fix bug in API
02.12.2025 Deploy to production
Note that "Exercise" and "Read a book" are not included because they are siblings of Work, not children.
| Option | Type | Default | Description |
|---|---|---|---|
workspace |
string|nil |
nil |
Workspace to use. If nil, uses current workspace. |
journal_folder |
string |
"journal" |
Name of the journal folder in your workspace. |
- Neorg >= 8.0.0
- Neovim >= 0.10.0
MIT