@our2ndbrain/cli 1.1.3

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.
Files changed (47) hide show
  1. package/.obsidian/.2ndbrain-manifest.json +8 -0
  2. package/.obsidian/app.json +6 -0
  3. package/.obsidian/appearance.json +1 -0
  4. package/.obsidian/community-plugins.json +4 -0
  5. package/.obsidian/core-plugins.json +33 -0
  6. package/.obsidian/graph.json +22 -0
  7. package/.obsidian/plugins/calendar/data.json +10 -0
  8. package/.obsidian/plugins/calendar/main.js +4459 -0
  9. package/.obsidian/plugins/calendar/manifest.json +10 -0
  10. package/.obsidian/plugins/obsidian-custom-attachment-location/data.json +32 -0
  11. package/.obsidian/plugins/obsidian-custom-attachment-location/main.js +575 -0
  12. package/.obsidian/plugins/obsidian-custom-attachment-location/manifest.json +11 -0
  13. package/.obsidian/plugins/obsidian-custom-attachment-location/styles.css +1 -0
  14. package/.obsidian/plugins/obsidian-git/data.json +62 -0
  15. package/.obsidian/plugins/obsidian-git/main.js +426 -0
  16. package/.obsidian/plugins/obsidian-git/manifest.json +10 -0
  17. package/.obsidian/plugins/obsidian-git/obsidian_askpass.sh +23 -0
  18. package/.obsidian/plugins/obsidian-git/styles.css +629 -0
  19. package/.obsidian/plugins/obsidian-tasks-plugin/main.js +504 -0
  20. package/.obsidian/plugins/obsidian-tasks-plugin/manifest.json +12 -0
  21. package/.obsidian/plugins/obsidian-tasks-plugin/styles.css +1 -0
  22. package/.obsidian/types.json +28 -0
  23. package/00_Dashboard/01_All_Tasks.md +118 -0
  24. package/00_Dashboard/09_All_Done.md +42 -0
  25. package/10_Inbox/Agents/Journal.md +1 -0
  26. package/99_System/Scripts/init_member.sh +108 -0
  27. package/99_System/Templates/tpl_daily_note.md +13 -0
  28. package/99_System/Templates/tpl_member_done.md +32 -0
  29. package/99_System/Templates/tpl_member_tasks.md +97 -0
  30. package/AGENTS.md +193 -0
  31. package/CHANGELOG.md +67 -0
  32. package/CLAUDE.md +153 -0
  33. package/LICENSE +201 -0
  34. package/README.md +636 -0
  35. package/bin/2ndbrain.js +117 -0
  36. package/package.json +56 -0
  37. package/src/commands/completion.js +198 -0
  38. package/src/commands/init.js +308 -0
  39. package/src/commands/member.js +123 -0
  40. package/src/commands/remove.js +88 -0
  41. package/src/commands/update.js +507 -0
  42. package/src/index.js +17 -0
  43. package/src/lib/config.js +112 -0
  44. package/src/lib/diff.js +222 -0
  45. package/src/lib/files.js +340 -0
  46. package/src/lib/obsidian.js +366 -0
  47. package/src/lib/prompt.js +182 -0
@@ -0,0 +1,12 @@
1
+ {
2
+ "id": "obsidian-tasks-plugin",
3
+ "name": "Tasks",
4
+ "version": "7.22.0",
5
+ "minAppVersion": "1.4.0",
6
+ "description": "Track tasks across your vault. Supports due dates, recurring tasks, done dates, sub-set of checklist items, and filtering.",
7
+ "helpUrl": "https://publish.obsidian.md/tasks/",
8
+ "author": "Clare Macrae and Ilyas Landikov (created by Martin Schenck)",
9
+ "authorUrl": "https://github.com/obsidian-tasks-group",
10
+ "fundingUrl": "https://github.com/sponsors/claremacrae",
11
+ "isDesktopOnly": false
12
+ }
@@ -0,0 +1 @@
1
+ @charset "UTF-8";.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;background:#fff;-webkit-box-shadow:1px 0 0 #e6e6e6,-1px 0 0 #e6e6e6,0 1px 0 #e6e6e6,0 -1px 0 #e6e6e6,0 3px 13px rgba(0,0,0,.08);box-shadow:1px 0 #e6e6e6,-1px 0 #e6e6e6,0 1px #e6e6e6,0 -1px #e6e6e6,0 3px 13px #00000014}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible}.flatpickr-calendar.open{display:inline-block;z-index:99999}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1);animation:fpFadeInDown .3s cubic-bezier(.23,1,.32,1)}.flatpickr-calendar.inline{display:block;position:relative;top:2px}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px)}.flatpickr-calendar.static.open{z-index:999;display:block}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none!important;box-shadow:none!important}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-2px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #e6e6e6}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:"";height:0;width:0;left:22px}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%}.flatpickr-calendar:before{border-width:5px;margin:0 -5px}.flatpickr-calendar:after{border-width:4px;margin:0 -4px}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff}.flatpickr-calendar:focus{outline:0}.flatpickr-wrapper{position:relative;display:inline-block}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-months .flatpickr-month{background:transparent;color:#000000e6;fill:#000000e6;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#000000e6;fill:#000000e6}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill .1s;transition:fill .1s;fill:inherit}.numInputWrapper{position:relative;height:auto}.numInputWrapper input,.numInputWrapper span{display:inline-block}.numInputWrapper input{width:100%}.numInputWrapper input::-ms-clear{display:none}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(57,57,57,.15);-webkit-box-sizing:border-box;box-sizing:border-box}.numInputWrapper span:hover{background:rgba(0,0,0,.1)}.numInputWrapper span:active{background:rgba(0,0,0,.2)}.numInputWrapper span:after{display:block;content:"";position:absolute}.numInputWrapper span.arrowUp{top:0;border-bottom:0}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(57,57,57,.6);top:26%}.numInputWrapper span.arrowDown{top:50%}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(57,57,57,.6);top:40%}.numInputWrapper span svg{width:inherit;height:auto}.numInputWrapper span svg path{fill:#00000080}.numInputWrapper:hover{background:rgba(0,0,0,.05)}.numInputWrapper:hover span{opacity:1}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0px,0px,0px);transform:translateZ(0)}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:.5ch;padding:0}.flatpickr-current-month span.cur-month:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch\fffd;display:inline-block}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#000000e6}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#000000e6}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 .5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-current-month input.cur-year:focus{outline:0}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:#00000080;background:transparent;pointer-events:none}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:transparent;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0;outline:none;padding:0 0 0 .5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0,0,0,.05)}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:none;padding:0}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:#0000008a;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder}.dayContainer,.flatpickr-weeks{padding:1px 0 0}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px}.flatpickr-days:focus{outline:0}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0px,0px,0px);transform:translateZ(0);opacity:1}.dayContainer+.dayContainer{-webkit-box-shadow:-1px 0 0 #e6e6e6;box-shadow:-1px 0 #e6e6e6}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#393939;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e6e6e6;border-color:#e6e6e6}.flatpickr-day.today{border-color:#959ea9}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#569ff7;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#569ff7}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0}.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #569ff7;box-shadow:-10px 0 #569ff7}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e6e6e6,5px 0 0 #e6e6e6;box-shadow:-5px 0 #e6e6e6,5px 0 #e6e6e6}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:#3939394d;background:transparent;border-color:transparent;cursor:default}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:#3939391a}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #569ff7,5px 0 0 #569ff7;box-shadow:-5px 0 #569ff7,5px 0 #569ff7}.flatpickr-day.hidden{visibility:hidden}.rangeMode .flatpickr-day{margin-top:1px}.flatpickr-weekwrapper{float:left}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;-webkit-box-shadow:1px 0 0 #e6e6e6;box-shadow:1px 0 #e6e6e6}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:#3939394d;background:transparent;cursor:default;border:none}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.flatpickr-time:after{content:"";display:table;clear:both}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939}.flatpickr-time.hasSeconds .numInputWrapper{width:26%}.flatpickr-time.time24hr .numInputWrapper{width:49%}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#393939;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield}.flatpickr-time input.flatpickr-hour{font-weight:700}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400}.flatpickr-time input:focus{outline:0;border:0}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;font-weight:700;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee}.flatpickr-input[readonly]{cursor:pointer}@-webkit-keyframes fpFadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}@keyframes fpFadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-20px,0);transform:translate3d(0,-20px,0)}to{opacity:1;-webkit-transform:translate3d(0,0,0);transform:translateZ(0)}}:root{--tasks-details-icon: url("data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M8.59 16.58L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.42z'/></svg>")}.plugin-tasks-query-explanation{--code-white-space: pre}.tasks-count{color:var(--text-faint);padding-left:20px}.tooltip.pop-up{animation:pop-up-animation .2s forwards ease-in-out}@keyframes pop-up-animation{0%{opacity:0;transform:translateY(-100%) scale(1)}20%{opacity:.7;transform:translateY(-100%) scale(1.02)}40%{opacity:1;transform:translateY(-100%) scale(1.05)}to{opacity:1;transform:translateY(-100%) scale(1)}}.task-cancelled,.task-created,.task-done,.task-due,.task-scheduled,.task-start{cursor:pointer;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.tasks-edit,.tasks-postpone{width:1em;height:1em;vertical-align:middle;margin-left:.33em;cursor:pointer;font-family:var(--font-interface);color:var(--text-accent);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}a.tasks-edit,a.tasks-postpone{text-decoration:none}.tasks-edit:after{content:"\1f4dd"}.tasks-postpone:after{content:"\23e9"}.tasks-urgency{font-size:var(--font-ui-smaller);font-family:var(--font-interface);padding:2px 6px;border-radius:var(--radius-s);color:var(--text-normal);background-color:var(--background-secondary);margin-left:.5em;line-height:1}.internal-link.internal-link-short-mode{text-decoration:none}.tasks-list-text{position:relative}.tasks-list-text .tooltip{position:absolute;top:0;left:0;white-space:nowrap}.task-list-item-checkbox{cursor:pointer}.tasks-layout-hide-tags .task-description a.tag,.task-list-item .task-block-link{display:none}.tasks-modal section+section{margin-top:6px}.tasks-modal hr{margin:6px 0}.tasks-modal .tasks-modal-error{border:1px solid red!important}.tasks-modal .accesskey{text-decoration:underline;text-underline-offset:1pt}.tasks-modal-description-section textarea{width:100%;min-height:calc(var(--input-height) * 2);resize:vertical;margin-top:8px}.tasks-modal-priority-section{display:grid;grid-template-columns:6em auto auto auto;grid-row-gap:.15em}.tasks-modal-priority-section>label{grid-row-start:1;grid-row-end:3}.tasks-modal-priority-section .task-modal-priority-option-container{white-space:nowrap}.tasks-modal-priority-section .task-modal-priority-option-container input+label{font-size:var(--font-ui-small);border-radius:var(--input-radius);padding:2px 3px}.tasks-modal-priority-section .task-modal-priority-option-container input{accent-color:var(--interactive-accent)}.tasks-modal-priority-section .task-modal-priority-option-container input:focus+label{box-shadow:0 0 0 2px var(--background-modifier-border-focus);border-color:var(--background-modifier-border-focus)}.tasks-modal-priority-section .task-modal-priority-option-container input:checked+label{font-weight:700}.tasks-modal-priority-section .task-modal-priority-option-container input:not(:checked)+label>span:nth-child(4){filter:grayscale(100%) opacity(60%)}.tasks-modal-dates-section{display:grid;grid-template-columns:6em 13em auto;column-gap:.5em;row-gap:5px;align-items:center}.tasks-modal-dates-section label{grid-column:1}.tasks-modal-dates-section .tasks-modal-date-input{min-width:15em}.tasks-modal-dates-section .tasks-modal-date-editor-picker{margin-left:.5em}.tasks-modal-dates-section .tasks-modal-parsed-date{grid-column:3;font-size:var(--font-ui-small)}.tasks-modal-dates-section .future-dates-only{grid-column-start:1;grid-column-end:3}.tasks-modal-dates-section .future-dates-only input{margin-left:.67em;top:2px}.tasks-modal-dates-section .status-editor-status-selector{grid-column:2}.tasks-modal-dependencies-section{display:grid;grid-template-columns:6em auto;column-gap:.5em;row-gap:5px;align-items:center}.tasks-modal-dependencies-section .tasks-modal-dependency-input{grid-column:2;width:100%}.tasks-modal-dependencies-section .results-dependency{grid-column:2}.tasks-modal-button-section{position:sticky;bottom:0;background-color:var(--modal-background);padding-bottom:16px;padding-top:16px;display:grid;grid-template-columns:3fr 1fr;column-gap:.5em}.tasks-modal-button-section button:disabled{pointer-events:none!important;opacity:.3!important}@media (max-width: 649px){.tasks-modal-priority-section{grid-template-columns:6em auto auto}.tasks-modal-priority-section>label{grid-row:1/span 3}}@media (max-width: 499px){.tasks-modal-priority-section{grid-template-columns:4em auto auto}.tasks-modal-dates-section{grid-template-columns:1fr;grid-auto-columns:auto}.tasks-modal-dates-section .tasks-modal-date-input{grid-column:1}.tasks-modal-dates-section .tasks-modal-parsed-date{grid-column:2}.tasks-modal-dates-section .status-editor-status-selector,.tasks-modal-dependencies-section label,.tasks-modal-dependencies-section .results-dependency{grid-column:1}}@media (max-width: 399px){.tasks-modal-dates-section .status-editor-status-selector{grid-column:1}.tasks-modal-dates-section>.tasks-modal-parsed-date{grid-column:1}.tasks-modal-priority-section{grid-template-columns:4em auto}.tasks-modal-priority-section>label{grid-row:1/span 6}.tasks-modal-dependencies-section{grid-template-columns:1fr;grid-auto-columns:auto}}@media (max-width: 259px){.tasks-modal-priority-section{grid-template-columns:1fr}.tasks-modal-priority-section>label{grid-row:1}}.task-dependencies-container{grid-column:2;display:flex;flex-wrap:wrap;gap:8px}.task-dependency{display:inline-flex;background-color:var(--interactive-normal);box-shadow:var(--input-shadow);border-radius:28px;padding:4px 4px 4px 8px}.task-dependency-name{font-size:var(--font-ui-small);max-width:160px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.task-dependency-delete{padding:3px;cursor:pointer;height:inherit;box-shadow:none!important;border-radius:50%}.task-dependency-dropdown{list-style:none;position:absolute;top:0;left:0;padding:4px;margin:0;background-color:var(--background-primary);border:1px;border-radius:6px;border-color:var(--background-modifier-border);border-style:solid;z-index:99;max-height:170px;overflow-y:auto}.task-dependency-dropdown li{padding:5px;margin:2px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.task-dependency-dropdown li .dependency-name{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.task-dependency-dropdown li .dependency-name-shared{width:60%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.task-dependency-dropdown li .dependency-path{width:40%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-style:italic;text-align:right;color:var(--italic-color)}.task-dependency-dropdown li.selected{background-color:var(--text-selection)}.tasks-setting-important{color:red;font-weight:700}.tasks-settings-is-invalid{color:var(--text-error)!important;background-color:rgba(var(--background-modifier-error-rgb),.2)!important}.tasks-settings .additional{margin:6px 12px}.tasks-settings .additional>.setting-item{border-top:0;padding-top:9px}.tasks-settings details>summary{outline:none;display:block!important;list-style:none!important;list-style-type:none!important;min-height:1rem;border-top-left-radius:.1rem;border-top-right-radius:.1rem;cursor:pointer;position:relative}.tasks-settings details>summary::-webkit-details-marker,.tasks-settings details>summary::marker{display:none!important}.tasks-settings details>summary>.collapser{position:absolute;top:50%;right:8px;transform:translateY(-50%);content:""}.tasks-settings details>summary>.collapser>.handle{transform:rotate(0);transition:transform .25s;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-image:var(--tasks-details-icon);mask-image:var(--tasks-details-icon);width:20px;height:20px}.tasks-settings details[open]>summary>.collapser>.handle{transform:rotate(90deg)}.tasks-nested-settings .setting-item{border:0px;padding-bottom:0}.tasks-nested-settings{padding-bottom:18px}.tasks-nested-settings[open] .setting-item-heading,.tasks-nested-settings:not(details) .setting-item-heading{border-top:0px;border-bottom:1px solid var(--background-modifier-border)}.tasks-settings .row-for-status{margin-top:0;margin-bottom:0}.tasks-settings .tasks-presets-wrapper{width:100%;position:relative;transition:all .2s ease}.tasks-settings .tasks-presets-wrapper.tasks-presets-dragging{opacity:.5;transform:rotate(2deg)}.tasks-settings .tasks-presets-wrapper.tasks-presets-drop-above:before{content:"";position:absolute;top:-2px;left:0;right:0;height:4px;background-color:var(--interactive-accent);border-radius:2px;z-index:10}.tasks-settings .tasks-presets-wrapper.tasks-presets-drop-below:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:4px;background-color:var(--interactive-accent);border-radius:2px;z-index:10}.tasks-settings .tasks-presets-setting .tasks-presets-key{grid-area:key}.tasks-settings .tasks-presets-setting .tasks-presets-key.has-error{border-color:var(--text-error);border-width:2px}.tasks-settings .tasks-presets-setting .tasks-presets-value{grid-area:value;min-width:300px;min-height:3em;font-family:var(--font-monospace);resize:horizontal;overflow-x:auto;overflow-y:hidden;white-space:pre}.tasks-settings .tasks-presets-setting .tasks-presets-drag-handle{grid-area:drag;color:var(--text-muted)}.tasks-settings .tasks-presets-setting .tasks-presets-drag-handle:hover{color:var(--text-normal)}.tasks-settings .tasks-presets-setting .tasks-presets-delete-button{grid-area:delete}.tasks-settings .tasks-presets-setting .setting-item-control{justify-content:start;display:grid;grid-template-columns:200px 1fr auto auto;grid-template-areas:"key value drag delete";gap:4px;align-items:unset;border:1px solid var(--background-modifier-border)!important;padding:.5em!important;background-color:var(--background-secondary)!important;border-radius:4px!important}@container (max-width: 600px){.tasks-settings .tasks-presets-setting .setting-item-control{grid-template-columns:5fr 1fr 1fr;grid-template-areas:"key drag delete" "value value value"}.tasks-settings .tasks-presets-setting .setting-item-control .tasks-presets-key{width:100%}}
@@ -0,0 +1,28 @@
1
+ {
2
+ "types": {
3
+ "aliases": "aliases",
4
+ "cssclasses": "multitext",
5
+ "tags": "tags",
6
+ "TQ_explain": "checkbox",
7
+ "TQ_extra_instructions": "text",
8
+ "TQ_short_mode": "checkbox",
9
+ "TQ_show_backlink": "checkbox",
10
+ "TQ_show_cancelled_date": "checkbox",
11
+ "TQ_show_created_date": "checkbox",
12
+ "TQ_show_depends_on": "checkbox",
13
+ "TQ_show_done_date": "checkbox",
14
+ "TQ_show_due_date": "checkbox",
15
+ "TQ_show_edit_button": "checkbox",
16
+ "TQ_show_id": "checkbox",
17
+ "TQ_show_on_completion": "checkbox",
18
+ "TQ_show_postpone_button": "checkbox",
19
+ "TQ_show_priority": "checkbox",
20
+ "TQ_show_recurrence_rule": "checkbox",
21
+ "TQ_show_scheduled_date": "checkbox",
22
+ "TQ_show_start_date": "checkbox",
23
+ "TQ_show_tags": "checkbox",
24
+ "TQ_show_task_count": "checkbox",
25
+ "TQ_show_tree": "checkbox",
26
+ "TQ_show_urgency": "checkbox"
27
+ }
28
+ }
@@ -0,0 +1,118 @@
1
+ # 📋 Dashboard
2
+
3
+ ## 🚀 今日必达 / Today's Priority
4
+
5
+ ```tasks
6
+ not done
7
+ has due date
8
+ due before tomorrow
9
+ tag does not include #someday
10
+ tag does not include #waiting
11
+ tag does not include #next
12
+ heading does not include Readings
13
+ description regex matches /\S/
14
+ path does not include Templates
15
+ path does not include 99_System
16
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
17
+ group by function task.file.folder.match(/10_Inbox\/([^\/]+)/)?.[1] ? (" " + task.file.folder.match(/10_Inbox\/([^\/]+)/)[1]) : "📝 NOTES"
18
+ sort by due date
19
+ limit 100
20
+ ```
21
+
22
+ ---
23
+
24
+ ## 🎯 立即行动 / Immediate Action
25
+
26
+ ```tasks
27
+ not done
28
+ no due date
29
+ tag does not include #next
30
+ tag does not include #waiting
31
+ tag does not include #someday
32
+ heading does not include Readings
33
+ description regex matches /\S/
34
+ path does not include Templates
35
+ path does not include 99_System
36
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
37
+ group by function task.file.folder.match(/10_Inbox\/([^\/]+)/)?.[1] ? (" " + task.file.folder.match(/10_Inbox\/([^\/]+)/)[1]) : "📝 NOTES"
38
+ sort by path
39
+ limit 100
40
+ ```
41
+
42
+ ---
43
+
44
+ ## ⏳ 等待跟进 / Waiting For
45
+
46
+ ```tasks
47
+ not done
48
+ tag includes #waiting
49
+ heading does not include Readings
50
+ description regex matches /\S/
51
+ path does not include Templates
52
+ path does not include 99_System
53
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
54
+ group by function task.file.folder.match(/10_Inbox\/([^\/]+)/)?.[1] ? (" " + task.file.folder.match(/10_Inbox\/([^\/]+)/)[1]) : "📝 NOTES"
55
+ sort by path
56
+ limit 100
57
+ ```
58
+
59
+ ---
60
+
61
+ ## 🔥 下一步行动 / Next Actions
62
+
63
+ ```tasks
64
+ not done
65
+ tag includes #next
66
+ heading does not include Readings
67
+ description regex matches /\S/
68
+ path does not include Templates
69
+ path does not include 99_System
70
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
71
+ group by function task.file.folder.match(/10_Inbox\/([^\/]+)/)?.[1] ? (" " + task.file.folder.match(/10_Inbox\/([^\/]+)/)[1]) : "📝 NOTES"
72
+ sort by priority
73
+ sort by due date
74
+ limit 100
75
+ ```
76
+
77
+ ---
78
+
79
+ ## 📅 未来计划 / Future Plans
80
+
81
+ ```tasks
82
+ not done
83
+ (due after today) OR (tag includes #someday)
84
+ tag does not include #waiting
85
+ tag does not include #next
86
+ heading does not include Readings
87
+ description regex matches /\S/
88
+ path does not include Templates
89
+ path does not include 99_System
90
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
91
+ group by function task.file.folder.match(/10_Inbox\/([^\/]+)/)?.[1] ? (" " + task.file.folder.match(/10_Inbox\/([^\/]+)/)[1]) : "📝 NOTES"
92
+ sort by due date
93
+ limit 100
94
+ ```
95
+
96
+ ---
97
+
98
+ ## 📚 阅读清单 / Reading List
99
+
100
+ ```tasks
101
+ not done
102
+ (heading includes Readings) OR (heading includes Reading) OR (tag includes #read) OR (tag includes #watch) OR (tag includes #listen)
103
+ description regex matches /\S/
104
+ sort by path desc
105
+ limit 100
106
+ ```
107
+
108
+ ---
109
+
110
+ ## 🤖 Agent 待办 / Agent Todos
111
+
112
+ ```tasks
113
+ not done
114
+ path includes 10_Inbox/Agents
115
+ description regex matches /\S/
116
+ sort by created reverse
117
+ limit 50
118
+ ```
@@ -0,0 +1,42 @@
1
+ ## ✅ 已完成任务 / Completed Tasks
2
+
3
+ ```tasks
4
+ done
5
+ heading does not include Readings
6
+ heading does not include Reading
7
+ tag does not include #read
8
+ tag does not include #watch
9
+ tag does not include #listen
10
+ description regex matches /\S/
11
+ path does not include Templates
12
+ path does not include 99_System
13
+ group by done reverse
14
+ group by function task.file.folder.match(/10_Inbox\/([^\/]+)/)?.[1] ? (" " + task.file.folder.match(/10_Inbox\/([^\/]+)/)[1]) : "📝 NOTES"
15
+ sort by done reverse
16
+ limit 100
17
+ ```
18
+
19
+ ---
20
+
21
+ ## 📚 Readings 已完成 / Completed Readings
22
+
23
+ ```tasks
24
+ done
25
+ (heading includes Readings) OR (heading includes Reading) OR (tag includes #read) OR (tag includes #watch) OR (tag includes #listen)
26
+ description regex matches /\S/
27
+ sort by done reverse
28
+ limit 100
29
+ ```
30
+
31
+ ---
32
+
33
+ ## 🤖 Agent 已完成 / Agent Completed
34
+
35
+ ```tasks
36
+ done
37
+ path includes 10_Inbox/Agents
38
+ description regex matches /\S/
39
+ group by done reverse
40
+ sort by done reverse
41
+ limit 50
42
+ ```
@@ -0,0 +1 @@
1
+ # Agent Journal
@@ -0,0 +1,108 @@
1
+ #!/bin/bash
2
+ #
3
+ # 2ndBrain Member Init Script
4
+ # Usage: ./99_System/Scripts/init_member.sh <member_name>
5
+ #
6
+
7
+ set -e
8
+
9
+ # Color definitions
10
+ RED='\033[0;31m'
11
+ GREEN='\033[0;32m'
12
+ YELLOW='\033[0;33m'
13
+ NC='\033[0m' # No Color
14
+
15
+ # Get project root directory
16
+ # Script is at 99_System/Scripts, need to go up two levels
17
+ SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
18
+ PROJECT_ROOT="$(dirname "$(dirname "$SCRIPT_DIR")")"
19
+
20
+ # Check arguments
21
+ if [ -z "$1" ]; then
22
+ echo -e "${RED}Error: Please provide member name${NC}"
23
+ echo "Usage: $0 <member_name>"
24
+ echo "Example: $0 alice"
25
+ exit 1
26
+ fi
27
+
28
+ MEMBER_NAME="$1"
29
+ MEMBER_DIR="$PROJECT_ROOT/10_Inbox/$MEMBER_NAME"
30
+ TEMPLATE_DIR="$PROJECT_ROOT/99_System/Templates"
31
+ OBSIDIAN_CONFIG="$PROJECT_ROOT/.obsidian/daily-notes.json"
32
+
33
+ echo ""
34
+ echo "🧠 2ndBrain Member Init"
35
+ echo "========================"
36
+ echo "Member name: $MEMBER_NAME"
37
+ echo "Member directory: 10_Inbox/$MEMBER_NAME"
38
+ echo ""
39
+
40
+ # Check if member directory already exists
41
+ if [ -d "$MEMBER_DIR" ]; then
42
+ echo -e "${YELLOW}⚠️ Directory 10_Inbox/$MEMBER_NAME already exists${NC}"
43
+ read -p "Overwrite existing files? (y/N) " -n 1 -r
44
+ echo
45
+ if [[ ! $REPLY =~ ^[Yy]$ ]]; then
46
+ echo "Cancelled"
47
+ exit 0
48
+ fi
49
+ fi
50
+
51
+ # 1. Create member directory
52
+ echo -n "📁 Creating directory 10_Inbox/$MEMBER_NAME ... "
53
+ mkdir -p "$MEMBER_DIR"
54
+ echo -e "${GREEN}✓${NC}"
55
+
56
+ # 2. Copy personal dashboard template
57
+ echo -n "📋 Copying personal dashboard template ... "
58
+ if [ -f "$TEMPLATE_DIR/tpl_member_tasks.md" ]; then
59
+ cp "$TEMPLATE_DIR/tpl_member_tasks.md" "$MEMBER_DIR/01_Tasks.md"
60
+ # Replace placeholder with member name
61
+ sed -i '' "s/{{MEMBER_NAME}}/$MEMBER_NAME/g" "$MEMBER_DIR/01_Tasks.md"
62
+ echo -e "${GREEN}✓${NC}"
63
+ else
64
+ echo -e "${RED}✗ Template file not found${NC}"
65
+ exit 1
66
+ fi
67
+
68
+ # 3. Copy personal done records template
69
+ echo -n "✅ Copying personal done records template ... "
70
+ if [ -f "$TEMPLATE_DIR/tpl_member_done.md" ]; then
71
+ cp "$TEMPLATE_DIR/tpl_member_done.md" "$MEMBER_DIR/09_Done.md"
72
+ # Replace placeholder with member name
73
+ sed -i '' "s/{{MEMBER_NAME}}/$MEMBER_NAME/g" "$MEMBER_DIR/09_Done.md"
74
+ echo -e "${GREEN}✓${NC}"
75
+ else
76
+ echo -e "${RED}✗ Template file not found${NC}"
77
+ exit 1
78
+ fi
79
+
80
+ # 4. Update Obsidian daily-notes config
81
+ echo -n "⚙️ Configuring Obsidian daily-notes ... "
82
+
83
+ # Ensure .obsidian directory exists
84
+ mkdir -p "$PROJECT_ROOT/.obsidian"
85
+
86
+ # Create or update config file
87
+ cat > "$OBSIDIAN_CONFIG" << EOF
88
+ {
89
+ "folder": "10_Inbox/$MEMBER_NAME",
90
+ "autorun": true,
91
+ "template": "99_System/Templates/tpl_daily_note"
92
+ }
93
+ EOF
94
+ echo -e "${GREEN}✓${NC}"
95
+
96
+ echo ""
97
+ echo "========================"
98
+ echo -e "${GREEN}🎉 Init complete!${NC}"
99
+ echo ""
100
+ echo "Created the following files:"
101
+ echo " - 10_Inbox/$MEMBER_NAME/01_Tasks.md (personal dashboard)"
102
+ echo " - 10_Inbox/$MEMBER_NAME/09_Done.md (done records)"
103
+ echo ""
104
+ echo "Next steps:"
105
+ echo " 1. Open this vault with Obsidian"
106
+ echo " 2. New daily notes will auto-save to 10_Inbox/$MEMBER_NAME/"
107
+ echo " 3. Start recording your first task!"
108
+ echo ""
@@ -0,0 +1,13 @@
1
+ # {{date:YYYY年MM月DD日 dddd HH:mm}}
2
+
3
+ ## 💼 Works / 工作事项
4
+
5
+ - [ ]
6
+
7
+ ## 💡 Thoughts / 想法灵感
8
+
9
+ - [ ]
10
+
11
+ ## 📚 Readings / 阅读清单
12
+
13
+ - [ ]
@@ -0,0 +1,32 @@
1
+ # ✅ {{MEMBER_NAME}}'s Done
2
+
3
+ ## ✅ 已完成任务 / Completed Tasks
4
+
5
+ ```tasks
6
+ done
7
+ heading does not include Readings
8
+ heading does not include Reading
9
+ tag does not include #read
10
+ tag does not include #watch
11
+ tag does not include #listen
12
+ description regex matches /\S/
13
+ path includes {{query.file.folder}}
14
+ group by done reverse
15
+ sort by heading reverse
16
+ sort by filename
17
+ sort by done reverse
18
+ limit 100
19
+ ```
20
+
21
+ ---
22
+
23
+ ## 📚 Readings 已完成 / Completed Readings
24
+
25
+ ```tasks
26
+ done
27
+ (heading includes Readings) OR (heading includes Reading) OR (tag includes #read) OR (tag includes #watch) OR (tag includes #listen)
28
+ description regex matches /\S/
29
+ path includes {{query.file.folder}}
30
+ sort by done reverse
31
+ limit 100
32
+ ```
@@ -0,0 +1,97 @@
1
+ # 📋 {{MEMBER_NAME}}'s Tasks
2
+
3
+ ## 🚀 今日必达 / Today's Priority
4
+
5
+ ```tasks
6
+ not done
7
+ has due date
8
+ due before tomorrow
9
+ tag does not include #someday
10
+ tag does not include #waiting
11
+ tag does not include #next
12
+ heading does not include Readings
13
+ description regex matches /\S/
14
+ path includes {{query.file.folder}}
15
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
16
+ sort by due date
17
+ limit 100
18
+ ```
19
+
20
+ ---
21
+
22
+ ## 🎯 立即行动 / Immediate Action
23
+
24
+ ```tasks
25
+ not done
26
+ no due date
27
+ tag does not include #next
28
+ tag does not include #waiting
29
+ tag does not include #someday
30
+ heading does not include Readings
31
+ description regex matches /\S/
32
+ path includes {{query.file.folder}}
33
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
34
+ sort by path
35
+ limit 100
36
+ ```
37
+
38
+ ---
39
+
40
+ ## ⏳ 等待跟进 / Waiting For
41
+
42
+ ```tasks
43
+ not done
44
+ tag includes #waiting
45
+ heading does not include Readings
46
+ description regex matches /\S/
47
+ path includes {{query.file.folder}}
48
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
49
+ sort by path
50
+ limit 100
51
+ ```
52
+
53
+ ---
54
+
55
+ ## 🔥 下一步行动 / Next Actions
56
+
57
+ ```tasks
58
+ not done
59
+ tag includes #next
60
+ heading does not include Readings
61
+ description regex matches /\S/
62
+ path includes {{query.file.folder}}
63
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
64
+ sort by priority
65
+ sort by due date
66
+ limit 100
67
+ ```
68
+
69
+ ---
70
+
71
+ ## 📅 未来计划 / Future Plans
72
+
73
+ ```tasks
74
+ not done
75
+ (due after today) OR (tag includes #someday)
76
+ tag does not include #waiting
77
+ tag does not include #next
78
+ heading does not include Readings
79
+ description regex matches /\S/
80
+ path includes {{query.file.folder}}
81
+ group by function !task.heading.includes("Thoughts") ? " 💼 Works" : "💡 Thoughts"
82
+ sort by due date
83
+ limit 100
84
+ ```
85
+
86
+ ---
87
+
88
+ ## 📚 阅读清单 / Reading List
89
+
90
+ ```tasks
91
+ not done
92
+ (heading includes Readings) OR (heading includes Reading) OR (tag includes #read) OR (tag includes #watch) OR (tag includes #listen)
93
+ description regex matches /\S/
94
+ path includes {{query.file.folder}}
95
+ sort by path desc
96
+ limit 100
97
+ ```