<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
    <title>kinther</title>
    <subtitle>kinther&#39;s site</subtitle>
    <link rel="self" type="application/atom+xml" href="https://kinthero.github.io/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://kinthero.github.io"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-08-08T00:00:00+00:00</updated>
    <id>https://kinthero.github.io/atom.xml</id>
    <entry xml:lang="en">
        <title>Org Mode 与工作流</title>
        <published>2026-08-08T00:00:00+00:00</published>
        <updated>2026-08-08T00:00:00+00:00</updated>
        
        <author>
          <name>kinther</name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://kinthero.github.io/blog/org-and-workflow/"/>
        <id>https://kinthero.github.io/blog/org-and-workflow/</id>
        
        <content type="html" xml:base="https://kinthero.github.io/blog/org-and-workflow/">&lt;h2 id=&quot;lisp-he-org-dui-bi&quot;&gt;lisp 和 org 对比&lt;/h2&gt;
&lt;h3 id=&quot;lisp-de-te-dian&quot;&gt;lisp 的特点&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;lisp 是一种列表编程语言&lt;/li&gt;
&lt;li&gt;它用括号表示一个函数操作&lt;/li&gt;
&lt;li&gt;它的第一个元素是函数名称，后面的都是参数&lt;/li&gt;
&lt;li&gt;lisp 中可以定义函数，函数可以被调用&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;org-de-te-dian&quot;&gt;org 的特点&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;org 是一种大纲式的语言&lt;/li&gt;
&lt;li&gt;它的父节点表示一个块的内容&lt;/li&gt;
&lt;li&gt;它的父节点表示当前内容的描述，后面都是具体内容&lt;/li&gt;
&lt;li&gt;org 笔记也应该定义模板或者被引用的块，用链接引用，然后描述就是重命名&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&quot;ju-li-zi-shuo-ming-ru-he-zuo-hao-bi-ji-jian-de-guan-xi&quot;&gt;举例子说明如何做好笔记间的关系&lt;/h2&gt;
&lt;p&gt;用读书笔记作为例子&lt;/p&gt;
&lt;h3 id=&quot;du-shu-bi-ji-de-mo-ban&quot;&gt;读书笔记的模板&lt;/h3&gt;
&lt;p&gt;因为自己经常会写读书笔记，所以定义一个自己经常用的读书笔记的模板，内容可能如下&lt;/p&gt;
&lt;pre class=&quot;giallo z-l-code z-d-code&quot; &gt;&lt;code data-lang=&quot;org&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-3 z-l-i z-d-2 z-d-i&quot;&gt;*** &lt;/span&gt;&lt;span class=&quot;z-l-3 z-l-i z-d-2 z-d-i&quot;&gt;读书笔记工作流/模板&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;这个父节点后面会直接用书籍名称，比如：xxxx读书笔记。&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;**** &lt;/span&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;书籍信息&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-10 z-l-b z-d-12 z-d-b&quot;&gt;*****&lt;/span&gt;&lt;span&gt; 作者&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-10 z-l-b z-d-12 z-d-b&quot;&gt;*****&lt;/span&gt;&lt;span&gt; 生产日期&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-10 z-l-b z-d-12 z-d-b&quot;&gt;*****&lt;/span&gt;&lt;span&gt; 出版社&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;**** &lt;/span&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;章节内容&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-10 z-l-b z-d-12 z-d-b&quot;&gt;*****&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt; [[&lt;/span&gt;&lt;span class=&quot;z-l-3 z-d-2&quot;&gt;*章节总结模板&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;第一章&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;]&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-10 z-l-b z-d-12 z-d-b&quot;&gt;*****&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt; [[&lt;/span&gt;&lt;span class=&quot;z-l-3 z-d-2&quot;&gt;*章节总结模板&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;第二章&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;]&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-10 z-l-b z-d-12 z-d-b&quot;&gt;*****&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt; [[&lt;/span&gt;&lt;span class=&quot;z-l-3 z-d-2&quot;&gt;*章节总结模板&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;第三章&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;z-l-5 z-d-7&quot;&gt;]&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-3 z-l-i z-d-2 z-d-i&quot;&gt;*** &lt;/span&gt;&lt;span class=&quot;z-l-3 z-l-i z-d-2 z-d-i&quot;&gt;章节总结模板&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;这个父节点可以用章节的名称&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;**** &lt;/span&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;知识点&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;**** &lt;/span&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;作者观点&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;**** &lt;/span&gt;&lt;span class=&quot;z-l-13 z-d-15&quot;&gt;评价&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&quot;guan-yu-gong-zuo-liu-de-xiang-fa&quot;&gt;关于工作流的想法&lt;/h2&gt;
&lt;p&gt;org 其实本身就已经具备了列表编程语言的特性了，所以其实可以把 org 笔记用来替代工作流软件&lt;/p&gt;
&lt;h3 id=&quot;gong-zuo-liu-de-te-dian&quot;&gt;工作流的特点&lt;/h3&gt;
&lt;p&gt;不关心具体函数的实现，只关心输入输出&lt;/p&gt;
&lt;h3 id=&quot;gong-zuo-liu-de-jie-dian&quot;&gt;工作流的节点&lt;/h3&gt;
&lt;p&gt;工作流的节点和 org 的节点差不多&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;org 的父节点对应工作流的节点名称，也就是 lisp 中的调用的函数&lt;/li&gt;
&lt;li&gt;org 的子节点对应工作流的输出参数，也就是 lisp 中的剩余的参数&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;zai-ai-gong-zuo-liu-zhong-de-ying-yong&quot;&gt;在 AI 工作流中的应用&lt;/h3&gt;
&lt;p&gt;可以在 org 文档中管理 AI 工作流，比如 comfy UI&lt;/p&gt;
&lt;h4 id=&quot;jie-dian-ding-yi&quot;&gt;节点定义&lt;/h4&gt;
&lt;p&gt;org 中的节点就可以正好对应工作流的节点，只需要把父节点链接到对应的实现函数上就行&lt;/p&gt;
&lt;h4 id=&quot;jie-dian-jie-xi&quot;&gt;节点解析&lt;/h4&gt;
&lt;p&gt;org 中的节点会根据索引和引用的的链接被解析成 lisp 函数，然后调用对应的 lisp 函数执行就可以了。
比如 org 中的节点叫作 &lt;strong&gt;调用模型&lt;/strong&gt; ，解析到的对应的 lisp 函数可能就是 &lt;strong&gt;(call_llm)&lt;/strong&gt; 。
然后每个子节点会按顺序传入到 lisp 函数中。&lt;/p&gt;
&lt;h4 id=&quot;han-shu-lian-jie&quot;&gt;函数链接&lt;/h4&gt;
&lt;p&gt;org 的节点的链接直接链接到定义的 lisp 函数。&lt;/p&gt;
&lt;h4 id=&quot;gong-zuo-liu-lian-jie&quot;&gt;工作流连接&lt;/h4&gt;
&lt;p&gt;工作流也是一个 org 节点，最大的节点表示最终的输出，里面会有子节点，表示当前节点的输出。
当然，它的子节点也会有它的输入节点。&lt;/p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>blog2</title>
        <published>2026-02-01T00:00:00+00:00</published>
        <updated>2026-02-01T00:00:00+00:00</updated>
        
        <author>
          <name>kinther</name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://kinthero.github.io/blog/blog2/"/>
        <id>https://kinthero.github.io/blog/blog2/</id>
        
        <content type="html" xml:base="https://kinthero.github.io/blog/blog2/">&lt;h2 id=&quot;header-2&quot;&gt;header 2&lt;/h2&gt;
&lt;p&gt;this is header 2&lt;/p&gt;
&lt;h3 id=&quot;header-3&quot;&gt;header 3&lt;/h3&gt;
&lt;p&gt;this is header 3&lt;/p&gt;
&lt;h3 id=&quot;header-4&quot;&gt;header 4&lt;/h3&gt;
&lt;p&gt;this is header 4&lt;/p&gt;
</content>
        
    </entry>
    <entry xml:lang="en">
        <title>blog1</title>
        <published>2026-01-01T00:00:00+00:00</published>
        <updated>2026-01-01T00:00:00+00:00</updated>
        
        <author>
          <name>kinther</name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://kinthero.github.io/blog/blog1/"/>
        <id>https://kinthero.github.io/blog/blog1/</id>
        
        <content type="html" xml:base="https://kinthero.github.io/blog/blog1/">&lt;h2 id=&quot;header-2&quot;&gt;header 2&lt;/h2&gt;
&lt;p&gt;this is header 2&lt;/p&gt;
&lt;h3 id=&quot;header-3&quot;&gt;header 3&lt;/h3&gt;
&lt;p&gt;this is header 3&lt;/p&gt;
&lt;h3 id=&quot;header-4&quot;&gt;header 4&lt;/h3&gt;
&lt;p&gt;this is header 4&lt;/p&gt;
</content>
        
    </entry>
</feed>
