<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>KJR020&apos;s Blog</title><description>KJR020の技術ブログ</description><link>https://kjr020.dev</link><language>ja-jp</language><item><title>PagefindでAstroブログに全文検索を導入した</title><link>https://kjr020.dev/posts/astro/astro-pagefind-search</link><guid isPermaLink="true">https://kjr020.dev/posts/astro/astro-pagefind-search</guid><description>astro-pagefindの導入手順と、Pagefind UIを使わずにAPIから直接カスタム検索UIを構築した過程を紹介します。</description><pubDate>Sat, 21 Mar 2026 07:00:00 GMT</pubDate><category>Astro</category><category>Pagefind</category><category>React</category><category>全文検索</category></item><item><title>OpenAIが実践するAgent-First時代の開発アプローチ — Harness Engineering</title><link>https://kjr020.dev/posts/llm/harness-engineering</link><guid isPermaLink="true">https://kjr020.dev/posts/llm/harness-engineering</guid><description>OpenAI Engineeringが提唱する「Harness Engineering」について、ThoughtworksのBirgitta Böckelerによる解説も踏まえて自分なりにまとめました。エージェントにコードを書かせるために人間は何を設計すべきかを整理しています。</description><pubDate>Thu, 26 Feb 2026 15:25:00 GMT</pubDate><category>LLM</category><category>AI</category><category>ソフトウェアエンジニアリング</category></item><item><title>Astroブログにコールアウト機能を追加した</title><link>https://kjr020.dev/posts/astro/astro%E3%83%96%E3%83%AD%E3%82%B0%E3%81%AB%E3%82%B3%E3%83%BC%E3%83%AB%E3%82%A2%E3%82%A6%E3%83%88%E6%A9%9F%E8%83%BD%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%97%E3%81%9F</link><guid isPermaLink="true">https://kjr020.dev/posts/astro/astro%E3%83%96%E3%83%AD%E3%82%B0%E3%81%AB%E3%82%B3%E3%83%BC%E3%83%AB%E3%82%A2%E3%82%A6%E3%83%88%E6%A9%9F%E8%83%BD%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%97%E3%81%9F</guid><pubDate>Wed, 21 Jan 2026 13:08:00 GMT</pubDate><category>Astro</category></item><item><title>ブログをAstroに移管してみた</title><link>https://kjr020.dev/posts/astro/%E3%83%96%E3%83%AD%E3%82%B0%E3%82%92astro%E3%81%AB%E7%A7%BB%E7%AE%A1%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F</link><guid isPermaLink="true">https://kjr020.dev/posts/astro/%E3%83%96%E3%83%AD%E3%82%B0%E3%82%92astro%E3%81%AB%E7%A7%BB%E7%AE%A1%E3%81%97%E3%81%A6%E3%81%BF%E3%81%9F</guid><pubDate>Sat, 17 Jan 2026 14:34:09 GMT</pubDate><category>Astro</category><category>技術選定</category></item><item><title>FastAPIのテストで`dependency_overrides`が効かない場合は、関数オブジェクトの同一性を確認する</title><link>https://kjr020.dev/posts/fastapi/fastapi%E3%81%AE%E3%83%86%E3%82%B9%E3%83%88%E3%81%A7dependency_overrides%E3%81%8C%E5%8A%B9%E3%81%8B%E3%81%AA%E3%81%84</link><guid isPermaLink="true">https://kjr020.dev/posts/fastapi/fastapi%E3%81%AE%E3%83%86%E3%82%B9%E3%83%88%E3%81%A7dependency_overrides%E3%81%8C%E5%8A%B9%E3%81%8B%E3%81%AA%E3%81%84</guid><pubDate>Fri, 10 Oct 2025 14:14:11 GMT</pubDate><category>FastAPI</category></item><item><title>FastAPIのバリデーションエラーについて調べた</title><link>https://kjr020.dev/posts/fastapi/fastapi%E3%81%AE%E3%83%90%E3%83%AA%E3%83%87%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E8%AA%BF%E3%81%B9%E3%81%9F</link><guid isPermaLink="true">https://kjr020.dev/posts/fastapi/fastapi%E3%81%AE%E3%83%90%E3%83%AA%E3%83%87%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E8%AA%BF%E3%81%B9%E3%81%9F</guid><pubDate>Fri, 03 Oct 2025 15:22:58 GMT</pubDate><category>FastAPI</category><category>Pydantic</category></item><item><title>Terraform入門してみる</title><link>https://kjr020.dev/posts/terraform/terraform%E5%85%A5%E9%96%80%E3%81%97%E3%81%9F</link><guid isPermaLink="true">https://kjr020.dev/posts/terraform/terraform%E5%85%A5%E9%96%80%E3%81%97%E3%81%9F</guid><pubDate>Fri, 18 Apr 2025 20:52:35 GMT</pubDate><category>Terraform</category></item><item><title>pytestのmonkeypatchについて調べた</title><link>https://kjr020.dev/posts/pytest/pytest_monkeypatch</link><guid isPermaLink="true">https://kjr020.dev/posts/pytest/pytest_monkeypatch</guid><pubDate>Thu, 16 Jan 2025 11:04:07 GMT</pubDate><category>pytest</category></item><item><title>推論と推測は違う ― 論理学入門を読んで考えたこと</title><link>https://kjr020.dev/posts/logic/%E8%AB%96%E7%90%86%E5%AD%A6%E5%85%A5%E9%96%80</link><guid isPermaLink="true">https://kjr020.dev/posts/logic/%E8%AB%96%E7%90%86%E5%AD%A6%E5%85%A5%E9%96%80</guid><pubDate>Fri, 13 Dec 2024 23:14:40 GMT</pubDate><category>論理学</category></item><item><title>差分管理と操作記録の違いについて考えてみた</title><link>https://kjr020.dev/posts/general/%E5%B7%AE%E5%88%86%E7%AE%A1%E7%90%86%E3%81%A8%E6%93%8D%E4%BD%9C%E8%A8%98%E9%8C%B2%E3%81%AE%E9%81%95%E3%81%84</link><guid isPermaLink="true">https://kjr020.dev/posts/general/%E5%B7%AE%E5%88%86%E7%AE%A1%E7%90%86%E3%81%A8%E6%93%8D%E4%BD%9C%E8%A8%98%E9%8C%B2%E3%81%AE%E9%81%95%E3%81%84</guid><pubDate>Sat, 02 Nov 2024 12:58:31 GMT</pubDate><category>Redis</category><category>データベース</category></item><item><title>Hugoでmermaid記法のグラフを表示する方法</title><link>https://kjr020.dev/posts/hugo/hugo%E3%81%A7mermaid%E8%A8%98%E6%B3%95%E3%81%AE%E3%82%B0%E3%83%A9%E3%83%95%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95</link><guid isPermaLink="true">https://kjr020.dev/posts/hugo/hugo%E3%81%A7mermaid%E8%A8%98%E6%B3%95%E3%81%AE%E3%82%B0%E3%83%A9%E3%83%95%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95</guid><pubDate>Fri, 25 Oct 2024 11:46:35 GMT</pubDate><category>Hugo</category><category>Mermaid</category></item><item><title>業務フローを整理せずテーブル設計をしようとして失敗した話</title><link>https://kjr020.dev/posts/database/%E6%A5%AD%E5%8B%99%E3%83%95%E3%83%AD%E3%83%BC%E3%82%92%E6%95%B4%E7%90%86%E3%81%9B%E3%81%9A%E3%83%86%E3%83%BC%E3%83%96%E3%83%AB%E8%A8%AD%E8%A8%88%E3%82%92%E3%81%97%E3%82%88%E3%81%86%E3%81%A8%E3%81%97%E3%81%A6%E5%A4%B1%E6%95%97%E3%81%97%E3%81%9F%E8%A9%B1</link><guid isPermaLink="true">https://kjr020.dev/posts/database/%E6%A5%AD%E5%8B%99%E3%83%95%E3%83%AD%E3%83%BC%E3%82%92%E6%95%B4%E7%90%86%E3%81%9B%E3%81%9A%E3%83%86%E3%83%BC%E3%83%96%E3%83%AB%E8%A8%AD%E8%A8%88%E3%82%92%E3%81%97%E3%82%88%E3%81%86%E3%81%A8%E3%81%97%E3%81%A6%E5%A4%B1%E6%95%97%E3%81%97%E3%81%9F%E8%A9%B1</guid><pubDate>Wed, 23 Oct 2024 21:56:56 GMT</pubDate><category>DB設計</category><category>業務フロー</category></item><item><title>Vitestについて</title><link>https://kjr020.dev/posts/vitest/vitest%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6</link><guid isPermaLink="true">https://kjr020.dev/posts/vitest/vitest%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6</guid><pubDate>Sat, 12 Oct 2024 13:20:17 GMT</pubDate><category>Vitest</category></item><item><title>Vue3Tutorial14</title><link>https://kjr020.dev/posts/vue/vue3tutorial14</link><guid isPermaLink="true">https://kjr020.dev/posts/vue/vue3tutorial14</guid><pubDate>Fri, 11 Oct 2024 13:50:50 GMT</pubDate><category>Vue</category></item><item><title>JSON.stringify()でのオブジェクト比較について</title><link>https://kjr020.dev/posts/general/json_stringify%E3%81%A7%E3%81%AE%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%AF%94%E8%BC%83</link><guid isPermaLink="true">https://kjr020.dev/posts/general/json_stringify%E3%81%A7%E3%81%AE%E3%82%AA%E3%83%96%E3%82%B8%E3%82%A7%E3%82%AF%E3%83%88%E6%AF%94%E8%BC%83</guid><pubDate>Thu, 10 Oct 2024 12:32:15 GMT</pubDate><category>JavaScript</category></item><item><title>Vue3 Tutorial Step13 Emit</title><link>https://kjr020.dev/posts/vue/vue3tutorial13</link><guid isPermaLink="true">https://kjr020.dev/posts/vue/vue3tutorial13</guid><pubDate>Tue, 01 Oct 2024 12:36:34 GMT</pubDate><category>Vue</category></item><item><title>Vue3 Tutorial 11-12 ChildComponent &amp; Props</title><link>https://kjr020.dev/posts/vue/vue3tutorial11-12</link><guid isPermaLink="true">https://kjr020.dev/posts/vue/vue3tutorial11-12</guid><pubDate>Sun, 29 Sep 2024 22:09:08 GMT</pubDate><category>Vue</category></item><item><title>Vue3 Tutorial Step10 watch</title><link>https://kjr020.dev/posts/vue/vue3tutorial10</link><guid isPermaLink="true">https://kjr020.dev/posts/vue/vue3tutorial10</guid><pubDate>Sun, 29 Sep 2024 05:56:37 GMT</pubDate><category>Vue</category></item><item><title>Vue3 Tutorial Step9 ライフサイクルとテンプレート参照</title><link>https://kjr020.dev/posts/vue/vue3tutorial9</link><guid isPermaLink="true">https://kjr020.dev/posts/vue/vue3tutorial9</guid><pubDate>Thu, 26 Sep 2024 22:43:52 GMT</pubDate><category>Vue</category></item><item><title>Vue3 Tutorial8 算出プロパティ</title><link>https://kjr020.dev/posts/vue/vue3tutorial8</link><guid isPermaLink="true">https://kjr020.dev/posts/vue/vue3tutorial8</guid><pubDate>Wed, 25 Sep 2024 22:02:19 GMT</pubDate><category>Vue</category></item><item><title>Vue3の復習 tutorial-step4-7</title><link>https://kjr020.dev/posts/vue/vue3tutorial4-7</link><guid isPermaLink="true">https://kjr020.dev/posts/vue/vue3tutorial4-7</guid><pubDate>Sun, 22 Sep 2024 21:15:58 GMT</pubDate><category>Vue</category></item><item><title>DbCについて調べた</title><link>https://kjr020.dev/posts/general/dbc%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E8%AA%BF%E3%81%B9%E3%81%9F</link><guid isPermaLink="true">https://kjr020.dev/posts/general/dbc%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E8%AA%BF%E3%81%B9%E3%81%9F</guid><pubDate>Thu, 19 Sep 2024 11:32:22 GMT</pubDate><category>DbC</category><category>契約プログラミング</category><category>設計手法</category></item><item><title>Pythonの組み込み関数superについて</title><link>https://kjr020.dev/posts/general/python%E3%81%AE%E7%B5%84%E3%81%BF%E8%BE%BC%E3%81%BF%E9%96%A2%E6%95%B0super%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6</link><guid isPermaLink="true">https://kjr020.dev/posts/general/python%E3%81%AE%E7%B5%84%E3%81%BF%E8%BE%BC%E3%81%BF%E9%96%A2%E6%95%B0super%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6</guid><pubDate>Tue, 03 Sep 2024 12:51:30 GMT</pubDate><category>Python</category></item><item><title>ValueObjectとは</title><link>https://kjr020.dev/posts/general/valueobject%E3%81%A8%E3%81%AF</link><guid isPermaLink="true">https://kjr020.dev/posts/general/valueobject%E3%81%A8%E3%81%AF</guid><pubDate>Wed, 28 Aug 2024 22:43:34 GMT</pubDate><category>DDD</category></item><item><title>CRLFについて</title><link>https://kjr020.dev/posts/general/crlf%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6</link><guid isPermaLink="true">https://kjr020.dev/posts/general/crlf%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6</guid><pubDate>Sun, 25 Aug 2024 08:06:03 GMT</pubDate><category>CRLF</category></item><item><title>Djangoチュートリアルその1</title><link>https://kjr020.dev/posts/django/django%E3%83%81%E3%83%A5%E3%83%BC%E3%83%88%E3%83%AA%E3%82%A2%E3%83%AB%E3%81%9D%E3%81%AE1</link><guid isPermaLink="true">https://kjr020.dev/posts/django/django%E3%83%81%E3%83%A5%E3%83%BC%E3%83%88%E3%83%AA%E3%82%A2%E3%83%AB%E3%81%9D%E3%81%AE1</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>Django</category></item><item><title>Cookieとは</title><link>https://kjr020.dev/posts/general/cookie%E3%81%A8%E3%81%AF</link><guid isPermaLink="true">https://kjr020.dev/posts/general/cookie%E3%81%A8%E3%81%AF</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>Cookie</category><category>Web</category><category>HTTP</category></item><item><title>CORSに関するメモ</title><link>https://kjr020.dev/posts/general/cors%E3%81%AB%E9%96%A2%E3%81%99%E3%82%8B%E3%83%A1%E3%83%A2</link><guid isPermaLink="true">https://kjr020.dev/posts/general/cors%E3%81%AB%E9%96%A2%E3%81%99%E3%82%8B%E3%83%A1%E3%83%A2</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>CORS</category></item><item><title>Ed25519とは</title><link>https://kjr020.dev/posts/general/ed25519%E3%81%A8%E3%81%AF</link><guid isPermaLink="true">https://kjr020.dev/posts/general/ed25519%E3%81%A8%E3%81%AF</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>セキュリティ</category><category>SSH</category><category>Ed25519</category></item><item><title>gitでcommit userを変更する</title><link>https://kjr020.dev/posts/general/git_fix_commit_user</link><guid isPermaLink="true">https://kjr020.dev/posts/general/git_fix_commit_user</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>Git</category></item><item><title>git merge strategyとは</title><link>https://kjr020.dev/posts/general/git_merge_strategy</link><guid isPermaLink="true">https://kjr020.dev/posts/general/git_merge_strategy</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>Git</category></item><item><title>git stash</title><link>https://kjr020.dev/posts/general/git_stash</link><guid isPermaLink="true">https://kjr020.dev/posts/general/git_stash</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>Git</category></item><item><title>PromiseAll</title><link>https://kjr020.dev/posts/general/promiseall</link><guid isPermaLink="true">https://kjr020.dev/posts/general/promiseall</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>JavaScript</category></item><item><title>SQLServerの認証方式</title><link>https://kjr020.dev/posts/general/sqlserver%E3%81%AE%E8%AA%8D%E8%A8%BC%E6%96%B9%E5%BC%8F</link><guid isPermaLink="true">https://kjr020.dev/posts/general/sqlserver%E3%81%AE%E8%AA%8D%E8%A8%BC%E6%96%B9%E5%BC%8F</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>SQL Server</category></item><item><title>VIFとは</title><link>https://kjr020.dev/posts/general/vif%E3%81%A8%E3%81%AF</link><guid isPermaLink="true">https://kjr020.dev/posts/general/vif%E3%81%A8%E3%81%AF</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>統計学</category></item><item><title>Vimのジャンプ</title><link>https://kjr020.dev/posts/general/vim_jump</link><guid isPermaLink="true">https://kjr020.dev/posts/general/vim_jump</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>Vim</category></item><item><title>VSCodeのtaskについて調べた</title><link>https://kjr020.dev/posts/general/vscode_tasks</link><guid isPermaLink="true">https://kjr020.dev/posts/general/vscode_tasks</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>VS Code</category></item><item><title>VSCodeでファイルエクスプローラのアイコンが消えたときの対処法</title><link>https://kjr020.dev/posts/general/vscode%E3%81%A7%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%97%E3%83%AD%E3%83%BC%E3%83%A9%E3%81%AE%E3%82%A2%E3%82%A4%E3%82%B3%E3%83%B3%E3%81%8C%E6%B6%88%E3%81%88%E3%81%9F%E3%81%A8%E3%81%8D%E3%81%AE%E5%AF%BE%E5%87%A6%E6%B3%95</link><guid isPermaLink="true">https://kjr020.dev/posts/general/vscode%E3%81%A7%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%97%E3%83%AD%E3%83%BC%E3%83%A9%E3%81%AE%E3%82%A2%E3%82%A4%E3%82%B3%E3%83%B3%E3%81%8C%E6%B6%88%E3%81%88%E3%81%9F%E3%81%A8%E3%81%8D%E3%81%AE%E5%AF%BE%E5%87%A6%E6%B3%95</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>VS Code</category></item><item><title>WinSWとは</title><link>https://kjr020.dev/posts/general/winsw</link><guid isPermaLink="true">https://kjr020.dev/posts/general/winsw</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>Windows</category></item><item><title>ソケットについて</title><link>https://kjr020.dev/posts/general/%E3%82%BD%E3%82%B1%E3%83%83%E3%83%88%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6</link><guid isPermaLink="true">https://kjr020.dev/posts/general/%E3%82%BD%E3%82%B1%E3%83%83%E3%83%88%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>Docker</category><category>ネットワーク</category></item><item><title>無線キーボードが遅延する仕組み</title><link>https://kjr020.dev/posts/general/%E7%84%A1%E7%B7%9A%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%8C%E9%81%85%E5%BB%B6%E3%81%99%E3%82%8B%E4%BB%95%E7%B5%84%E3%81%BF</link><guid isPermaLink="true">https://kjr020.dev/posts/general/%E7%84%A1%E7%B7%9A%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%8C%E9%81%85%E5%BB%B6%E3%81%99%E3%82%8B%E4%BB%95%E7%B5%84%E3%81%BF</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>ハードウェア</category></item><item><title>Reactのstate管理</title><link>https://kjr020.dev/posts/react/react%E3%81%AEstate%E7%AE%A1%E7%90%86</link><guid isPermaLink="true">https://kjr020.dev/posts/react/react%E3%81%AEstate%E7%AE%A1%E7%90%86</guid><pubDate>Sun, 25 Aug 2024 08:03:17 GMT</pubDate><category>React</category></item></channel></rss>