<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://blog.yusukeikoma.com/ja/learn/go/</loc></url><url><loc>https://blog.yusukeikoma.com/ja/learn/rust/</loc></url><url><loc>https://blog.yusukeikoma.com/ja/learn/distributed-systems/</loc></url><url><loc>https://blog.yusukeikoma.com/ja/</loc><lastmod>2026-10-05T13:20:23+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/networking/</loc><lastmod>2026-10-05T13:20:23+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/networking/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/networking/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/</loc><lastmod>2026-10-05T13:20:23+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/python/</loc><lastmod>2026-10-05T13:20:23+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/python/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/python/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/sockets/</loc><lastmod>2026-10-05T13:20:23+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/sockets/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/sockets/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/udp-connect-local-ip/</loc><lastmod>2026-10-05T13:20:23+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/udp-connect-local-ip/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/udp-connect-local-ip/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/</loc><lastmod>2026-10-05T13:20:23+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/linux/</loc><lastmod>2026-10-03T18:08:27+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/linux/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/linux/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/reliability/</loc><lastmod>2026-10-03T18:08:27+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/reliability/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/reliability/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/systemd/</loc><lastmod>2026-10-03T18:08:27+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/systemd/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/systemd/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/replace-running-daemon-without-downtime/</loc><lastmod>2026-10-03T18:08:27+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/replace-running-daemon-without-downtime/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/replace-running-daemon-without-downtime/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/expo/</loc><lastmod>2026-09-30T11:33:30+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/expo/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/expo/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/fingerprint-runtime-version-changes-when-you-edit-extra/</loc><lastmod>2026-09-30T11:33:30+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/fingerprint-runtime-version-changes-when-you-edit-extra/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/fingerprint-runtime-version-changes-when-you-edit-extra/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/mobile/</loc><lastmod>2026-09-30T11:33:30+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/mobile/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/mobile/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/react-native/</loc><lastmod>2026-09-30T11:33:30+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/react-native/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/react-native/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/systemd-killmode-self-update/</loc><lastmod>2026-09-28T09:48:47+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/systemd-killmode-self-update/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/systemd-killmode-self-update/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/javascript/</loc><lastmod>2026-09-26T21:31:14+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/javascript/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/javascript/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/react-native-builtin-url-does-not-resolve-dot-dot/</loc><lastmod>2026-09-26T21:31:14+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/react-native-builtin-url-does-not-resolve-dot-dot/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/react-native-builtin-url-does-not-resolve-dot-dot/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/cloudflare/</loc><lastmod>2026-09-24T21:33:45+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/cloudflare/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/cloudflare/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/durable-object-alarm-retries-six-times-then-stops/</loc><lastmod>2026-09-24T21:33:45+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/durable-object-alarm-retries-six-times-then-stops/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/durable-object-alarm-retries-six-times-then-stops/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/durable-objects/</loc><lastmod>2026-09-24T21:33:45+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/durable-objects/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/durable-objects/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/durable-objects-websocket-hibernation/</loc><lastmod>2026-09-22T13:39:45+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/durable-objects-websocket-hibernation/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/durable-objects-websocket-hibernation/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/websocket/</loc><lastmod>2026-09-22T13:39:45+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/websocket/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/websocket/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/push-notifications-are-hints-apns-stores-one/</loc><lastmod>2026-09-19T21:10:16+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/push-notifications-are-hints-apns-stores-one/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/push-notifications-are-hints-apns-stores-one/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/distributed-systems/</loc><lastmod>2026-09-19T21:10:16+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/distributed-systems/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/distributed-systems/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/realtime/</loc><lastmod>2026-09-19T21:10:16+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/realtime/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/realtime/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/authorization/</loc><lastmod>2026-09-17T09:49:13+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/authorization/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/authorization/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/oauth/</loc><lastmod>2026-09-17T09:49:13+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/oauth/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/oauth/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/security/</loc><lastmod>2026-09-17T09:49:13+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/security/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/security/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/ignoring-unknown-jwt-claims-only-removes-access/</loc><lastmod>2026-09-17T09:49:13+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/ignoring-unknown-jwt-claims-only-removes-access/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/ignoring-unknown-jwt-claims-only-removes-access/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/authentication/</loc><lastmod>2026-09-15T13:18:09+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/authentication/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/authentication/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/step-up-authentication-challenge-is-a-401/</loc><lastmod>2026-09-15T13:18:09+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/step-up-authentication-challenge-is-a-401/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/step-up-authentication-challenge-is-a-401/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/mobile-os-background-sockets/</loc><lastmod>2026-09-12T14:18:24+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/mobile-os-background-sockets/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/mobile-os-background-sockets/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/http/</loc><lastmod>2026-09-10T11:23:25+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/http/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/http/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/websocket-origin-check-is-not-authentication/</loc><lastmod>2026-09-10T11:23:25+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/websocket-origin-check-is-not-authentication/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/websocket-origin-check-is-not-authentication/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/http2-timeout-stream-vs-connection/</loc><lastmod>2026-09-08T12:56:00+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/http2-timeout-stream-vs-connection/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/http2-timeout-stream-vs-connection/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/websocket-bufferedamount-backpressure/</loc><lastmod>2026-09-06T20:54:24+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/websocket-bufferedamount-backpressure/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/websocket-bufferedamount-backpressure/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/resumable-streams-cursors-last-event-id-snapshots/</loc><lastmod>2026-09-04T19:26:37+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/resumable-streams-cursors-last-event-id-snapshots/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/resumable-streams-cursors-last-event-id-snapshots/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/tcp/</loc><lastmod>2026-09-01T20:56:28+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/tcp/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/tcp/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/two-small-writes-nagle-delayed-ack/</loc><lastmod>2026-09-01T20:56:28+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/two-small-writes-nagle-delayed-ack/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/two-small-writes-nagle-delayed-ack/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/concurrency/</loc><lastmod>2026-08-30T13:34:18+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/concurrency/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/concurrency/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/refresh-token-rotation-concurrent-requests/</loc><lastmod>2026-08-30T13:34:18+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/refresh-token-rotation-concurrent-requests/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/refresh-token-rotation-concurrent-requests/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/idempotency/</loc><lastmod>2026-08-28T10:07:45+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/idempotency/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/idempotency/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/exactly-once-delivery-idempotency-and-backoff/</loc><lastmod>2026-08-28T10:07:45+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/exactly-once-delivery-idempotency-and-backoff/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/exactly-once-delivery-idempotency-and-backoff/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/level-triggered-invalidation/</loc><lastmod>2026-08-25T17:33:01+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/level-triggered-invalidation/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/level-triggered-invalidation/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/tcp-half-open-connection-detection/</loc><lastmod>2026-08-23T15:09:06+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/tcp-half-open-connection-detection/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/tcp-half-open-connection-detection/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/websocket-reauthentication-on-long-lived-connections/</loc><lastmod>2026-08-21T13:34:18+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/websocket-reauthentication-on-long-lived-connections/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/websocket-reauthentication-on-long-lived-connections/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/typescript/</loc><lastmod>2026-08-20T18:03:49+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/typescript/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/typescript/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/replace-polling-with-subscriptions-keep-poll-as-fallback/</loc><lastmod>2026-08-20T18:03:49+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/replace-polling-with-subscriptions-keep-poll-as-fallback/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/replace-polling-with-subscriptions-keep-poll-as-fallback/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/go/</loc><lastmod>2026-08-19T12:47:53+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/go/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/go/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/batching-and-bounded-frames-on-a-metered-relay/</loc><lastmod>2026-08-19T12:47:53+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/batching-and-bounded-frames-on-a-metered-relay/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/batching-and-bounded-frames-on-a-metered-relay/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/liveness-without-pings-and-idle-sleep/</loc><lastmod>2026-08-18T22:41:09+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/liveness-without-pings-and-idle-sleep/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/liveness-without-pings-and-idle-sleep/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/when-the-close-event-never-comes/</loc><lastmod>2026-08-17T17:27:04+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/when-the-close-event-never-comes/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/when-the-close-event-never-comes/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/system-design/</loc><lastmod>2026-08-13T10:14:09+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/system-design/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/system-design/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/live-document-and-saved-copy/</loc><lastmod>2026-08-13T10:14:09+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/live-document-and-saved-copy/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/live-document-and-saved-copy/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/one-open-admission/</loc><lastmod>2026-08-12T10:27:31+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/one-open-admission/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/one-open-admission/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/separate-authentication-and-authorization/</loc><lastmod>2026-08-11T17:14:04+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/separate-authentication-and-authorization/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/separate-authentication-and-authorization/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/agents/</loc><lastmod>2026-08-06T14:41:04+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/agents/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/agents/"/></url><url><loc>https://blog.yusukeikoma.com/ja/tags/llm/</loc><lastmod>2026-08-06T14:41:04+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/tags/llm/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/tags/llm/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/search-before-write/</loc><lastmod>2026-08-06T14:41:04+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/search-before-write/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/search-before-write/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/transcript-is-not-a-task/</loc><lastmod>2026-08-04T22:38:09+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/transcript-is-not-a-task/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/transcript-is-not-a-task/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/resident-agent-behind-nat/</loc><lastmod>2026-08-03T19:03:09+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/resident-agent-behind-nat/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/resident-agent-behind-nat/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/go-daemon-and-python-api-hardening/</loc><lastmod>2026-08-01T14:11:31+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/go-daemon-and-python-api-hardening/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/go-daemon-and-python-api-hardening/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/ai-agent-clean-architecture/</loc><lastmod>2026-04-07T12:00:00+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/ai-agent-clean-architecture/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/ai-agent-clean-architecture/"/></url><url><loc>https://blog.yusukeikoma.com/ja/posts/hello-world/</loc><lastmod>2026-04-07T10:00:00+09:00</lastmod><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/posts/hello-world/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/posts/hello-world/"/></url><url><loc>https://blog.yusukeikoma.com/ja/about/</loc><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/about/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/about/"/></url><url><loc>https://blog.yusukeikoma.com/ja/learn/</loc></url><url><loc>https://blog.yusukeikoma.com/ja/search/</loc><xhtml:link rel="alternate" hreflang="en-us" href="https://blog.yusukeikoma.com/search/"/><xhtml:link rel="alternate" hreflang="ja-jp" href="https://blog.yusukeikoma.com/ja/search/"/></url></urlset>