fix(skills): resolve multiple unclosed strings in skills.org

This commit is contained in:
2026-04-28 18:07:17 -04:00
parent e9cc1dc0eb
commit 06d3872d6a

View File

@@ -261,7 +261,7 @@ Only loads blocks that specify a .lisp tangle target, ignoring tests and example
(lines (uiop:split-string content :separator '(#\Newline))) (lines (uiop:split-string content :separator '(#\Newline)))
(in-lisp-block nil) (in-lisp-block nil)
(collect-this-block nil) (collect-this-block nil)
(lisp-code " (lisp-code "")
(pkg-name (intern (string-upcase (format nil "OPENCORTEX.SKILLS.~a" skill-base-name)) :keyword))) (pkg-name (intern (string-upcase (format nil "OPENCORTEX.SKILLS.~a" skill-base-name)) :keyword)))
(dolist (line lines) (dolist (line lines)
@@ -469,22 +469,22 @@ EXAMPLES:
*** The Reload-Skill Tool (Hot Reload) *** The Reload-Skill Tool (Hot Reload)
#+begin_src lisp #+begin_src lisp
(def-cognitive-tool :reload-skill "Reloads a skill from its Org-mode source file, recompiling into the live image without restarting the daemon." (def-cognitive-tool :reload-skill "Reloads a skill from its Org-mode source file, recompiling into the live image without restarting the daemon."
((:skill :type :string :description "The skill name (e.g., \"org-skill-policy\ or full path to the .org file) ((:skill :type :string :description "The skill name (e.g., \"org-skill-policy\") or full path to the .org file"))
:guard (lambda (args context) :guard (lambda (args context)
(declare (ignore context)) (declare (ignore context))
(let ((skill (getf args :skill))) (let ((skill (getf args :skill)))
(or (uiop:file-exists-p skill) (or (uiop:file-exists-p skill)
(let ((skills-dir (or (ignore-errors (uiop:getenv "SKILLS_DIR) (let ((skills-dir (or (ignore-errors (uiop:getenv "SKILLS_DIR"))
(namestring (merge-pathnames "notes/" (user-homedir-pathname)))))) (namestring (merge-pathnames "notes/" (user-homedir-pathname))))))
(uiop:file-exists-p (merge-pathnames (format nil "~a.org" skill) skills-dir)))))) (uiop:file-exists-p (merge-pathnames (format nil "~a.org" skill) skills-dir))))))
:body (lambda (args) :body (lambda (args)
(let ((skill (getf args :skill))) (let ((skill (getf args :skill)))
(snapshot-memory) (snapshot-memory)
(let ((skills-dir (or (ignore-errors (uiop:getenv "SKILLS_DIR) (let ((skills-dir (or (ignore-errors (uiop:getenv "SKILLS_DIR"))
(namestring (merge-pathnames "notes/" (user-homedir-pathname))))) (namestring (merge-pathnames "notes/" (user-homedir-pathname)))))
(resolved-path (context-resolve-path skills-dir)) (resolved-path (context-resolve-path skills-dir))
(skills-dir-actual (if (ignore-errors (uiop:getenv "SKILLS_DIR) (skills-dir-actual (if (ignore-errors (uiop:getenv "SKILLS_DIR"))
(uiop:ensure-directory-pathname (context-resolve-path (uiop:getenv "SKILLS_DIR)) (uiop:ensure-directory-pathname (context-resolve-path (uiop:getenv "SKILLS_DIR")))
(uiop:ensure-directory-pathname (user-homedir-pathname))))) (uiop:ensure-directory-pathname (user-homedir-pathname)))))
(let ((file (if (uiop:file-exists-p skill) (let ((file (if (uiop:file-exists-p skill)
(uiop:ensure-pathname skill) (uiop:ensure-pathname skill)