File tree Expand file tree Collapse file tree 3 files changed +13
-11
lines changed Expand file tree Collapse file tree 3 files changed +13
-11
lines changed Original file line number Diff line number Diff line change 6666 [nil " --nostream" " disable streaming responses"
6767 :id :stream
6868 :assoc-fn (fn [m k _] (assoc m k false ))]
69- [nil " --register ref" " register a prompt REF" ]
69+ [nil " --register ref" " register a prompt REF"
70+ :multi true
71+ :default []
72+ :update-fn conj]
7073 [nil " --mcp" " use the mcp jsonrpc protocol" ]
7174 [nil " --debug" " add debug logging" ]
7275 [nil " --help" " print option summary" ]])
Original file line number Diff line number Diff line change 77(def db* (atom {}))
88
99(defn get-prompt-data [{:keys [register] :as opts}]
10- (let [f (git/prompt-file register)
11- {:keys [messages metadata functions] :as entry} (prompts/get-prompts (assoc opts :prompts f))]
12- entry))
10+ (->> register
11+ (map (fn [ref] [ref (git/prompt-file ref)]))
12+ (map (fn [[ref f]]
13+ (let [m (prompts/get-prompts (assoc opts :prompts f))]
14+ [(or (-> m :metadata :name ) ref) m])))
15+ (into {})))
1316
1417(defn add [opts]
1518 (logger/info " adding prompts" (:register opts))
1619 (let [m (get-prompt-data opts)]
17- (swap! db* update-in [:mcp.prompts/registry ]
18- (fnil assoc {})
19- #_(:register opts)
20- (or (-> m :metadata :name ) (:register opts))
21- m)))
20+ (swap! db* update-in [:mcp.prompts/registry ] (fnil merge {}) m)))
2221
2322(comment
24- (add {:register " github:docker/labs-ai-tools-for-devs?path=prompts/examples/explain_dockerfile.md&ref=slim/server" }))
23+ (add {:register [ " github:docker/labs-ai-tools-for-devs?path=prompts/examples/explain_dockerfile.md&ref=slim/server" ] }))
2524
Original file line number Diff line number Diff line change 9494(defn entry->prompt-listing [k v m]
9595 (merge
9696 {:name (str k)}
97- (select-keys m [:description ])))
97+ (select-keys ( :metadata v) [:description ])))
9898
9999(defmethod lsp.server /receive-request " prompts/list" [_ {:keys [db*]} params]
100100 ; ; TODO might contain a cursor
You can’t perform that action at this time.
0 commit comments