@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.
- package/.obsidian/.2ndbrain-manifest.json +8 -0
- package/.obsidian/app.json +6 -0
- package/.obsidian/appearance.json +1 -0
- package/.obsidian/community-plugins.json +4 -0
- package/.obsidian/core-plugins.json +33 -0
- package/.obsidian/graph.json +22 -0
- package/.obsidian/plugins/calendar/data.json +10 -0
- package/.obsidian/plugins/calendar/main.js +4459 -0
- package/.obsidian/plugins/calendar/manifest.json +10 -0
- package/.obsidian/plugins/obsidian-custom-attachment-location/data.json +32 -0
- package/.obsidian/plugins/obsidian-custom-attachment-location/main.js +575 -0
- package/.obsidian/plugins/obsidian-custom-attachment-location/manifest.json +11 -0
- package/.obsidian/plugins/obsidian-custom-attachment-location/styles.css +1 -0
- package/.obsidian/plugins/obsidian-git/data.json +62 -0
- package/.obsidian/plugins/obsidian-git/main.js +426 -0
- package/.obsidian/plugins/obsidian-git/manifest.json +10 -0
- package/.obsidian/plugins/obsidian-git/obsidian_askpass.sh +23 -0
- package/.obsidian/plugins/obsidian-git/styles.css +629 -0
- package/.obsidian/plugins/obsidian-tasks-plugin/main.js +504 -0
- package/.obsidian/plugins/obsidian-tasks-plugin/manifest.json +12 -0
- package/.obsidian/plugins/obsidian-tasks-plugin/styles.css +1 -0
- package/.obsidian/types.json +28 -0
- package/00_Dashboard/01_All_Tasks.md +118 -0
- package/00_Dashboard/09_All_Done.md +42 -0
- package/10_Inbox/Agents/Journal.md +1 -0
- package/99_System/Scripts/init_member.sh +108 -0
- package/99_System/Templates/tpl_daily_note.md +13 -0
- package/99_System/Templates/tpl_member_done.md +32 -0
- package/99_System/Templates/tpl_member_tasks.md +97 -0
- package/AGENTS.md +193 -0
- package/CHANGELOG.md +67 -0
- package/CLAUDE.md +153 -0
- package/LICENSE +201 -0
- package/README.md +636 -0
- package/bin/2ndbrain.js +117 -0
- package/package.json +56 -0
- package/src/commands/completion.js +198 -0
- package/src/commands/init.js +308 -0
- package/src/commands/member.js +123 -0
- package/src/commands/remove.js +88 -0
- package/src/commands/update.js +507 -0
- package/src/index.js +17 -0
- package/src/lib/config.js +112 -0
- package/src/lib/diff.js +222 -0
- package/src/lib/files.js +340 -0
- package/src/lib/obsidian.js +366 -0
- 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,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
|
+
```
|