{"id":253,"date":"2026-06-16T13:37:52","date_gmt":"2026-06-16T05:37:52","guid":{"rendered":"https:\/\/ph.listeningo.cn\/index.php\/2026\/06\/16\/2026-06-15\/"},"modified":"2026-06-16T13:37:52","modified_gmt":"2026-06-16T05:37:52","slug":"2026-06-15","status":"publish","type":"post","link":"https:\/\/ph.listeningo.cn\/index.php\/2026\/06\/16\/2026-06-15\/","title":{"rendered":"PH\u70ed\u699c | 2026-06-15"},"content":{"rendered":"<p><!DOCTYPE html><br \/>\n<html lang=\"zh-CN\"><br \/>\n<head><br \/>\n    <meta charset=\"UTF-8\"><br \/>\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><br \/>\n    <title>Product Hunt \u6bcf\u65e5\u70ed\u699c 2026-06-15<\/title><\/p>\n<style>\n        \/* --- \u5168\u5c40\u91cd\u7f6e\u4e0e\u5b57\u4f53 --- *\/\n        :root {\n            --ph-orange: #FF6154;\n            --text-main: #21293C;\n            --text-secondary: #4B587C;\n            --bg-ai: #F7F7F9;\n            --border-color: #E6E6E6;\n        }<\/p>\n<p>        body {\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Helvetica, Arial, sans-serif;\n            color: var(--text-main);\n            background-color: #ffffff;\n            line-height: 1.6;\n            margin: 0;\n            padding: 20px;\n        }<\/p>\n<p>        .container {\n            max-width: 800px;\n            margin: 0 auto;\n        }<\/p>\n<p>        \/* --- \u5361\u7247\u6837\u5f0f --- *\/\n        .app-card {\n            border-bottom: 1px solid var(--border-color);\n            padding-bottom: 40px;\n            margin-bottom: 40px;\n        }<\/p>\n<p>        \/* --- 1. \u5934\u90e8\u533a\u57df --- *\/\n        .app-header {\n            display: flex;\n            align-items: flex-start;\n            gap: 16px;\n            margin-bottom: 20px;\n        }<\/p>\n<p>        .rank {\n            font-size: 24px;\n            font-weight: 300;\n            color: #999;\n            min-width: 30px;\n            padding-top: 4px;\n        }<\/p>\n<p>        .title-group {\n            flex: 1;\n        }<\/p>\n<p>        .app-title {\n            font-size: 24px;\n            font-weight: 800;\n            margin: 0 0 4px 0;\n            color: var(--text-main);\n            text-decoration: none;\n            display: inline-block;\n        }<\/p>\n<p>        .app-title:hover {\n            color: var(--ph-orange);\n            text-decoration: underline;\n        }<\/p>\n<p>        .vote-btn {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n            border: 1px solid var(--border-color);\n            border-radius: 8px;\n            padding: 8px 12px;\n            background: #fff;\n            min-width: 60px;\n            box-shadow: 0 1px 2px rgba(0,0,0,0.05);\n        }<\/p>\n<p>        .vote-arrow {\n            color: var(--ph-orange);\n            font-size: 14px;\n            margin-bottom: -2px;\n        }<\/p>\n<p>        .vote-count {\n            font-weight: 600;\n            font-size: 14px;\n        }<\/p>\n<p>        \/* --- 2. \u5347\u7ea7\u7248\u5a92\u4f53\u753b\u5eca (\u5173\u952e\u4fee\u6539) --- *\/\n        .media-gallery {\n            display: flex;\n            gap: 16px;\n            overflow-x: auto; \/* \u5141\u8bb8\u6a2a\u5411\u6eda\u52a8 *\/\n            padding-bottom: 16px; \/* \u7559\u51fa\u6eda\u52a8\u7a7a\u95f4 *\/\n            scroll-snap-type: x mandatory; \/* \u6eda\u52a8\u5438\u9644\u6548\u679c *\/\n            -webkit-overflow-scrolling: touch; \/* iOS \u5e73\u6ed1\u6eda\u52a8 *\/\n            margin-bottom: 20px;<\/p>\n<p>            \/* \u9690\u85cf\u9ed8\u8ba4\u6eda\u52a8\u6761\u4f46\u4fdd\u7559\u529f\u80fd (Firefox) *\/\n            scrollbar-width: thin;\n            scrollbar-color: #ddd transparent;\n        }<\/p>\n<p>        \/* Webkit \u6eda\u52a8\u6761\u6837\u5f0f\u4f18\u5316 *\/\n        .media-gallery::-webkit-scrollbar {\n            height: 6px;\n        }\n        .media-gallery::-webkit-scrollbar-track {\n            background: transparent;\n        }\n        .media-gallery::-webkit-scrollbar-thumb {\n            background-color: #eee;\n            border-radius: 10px;\n        }<\/p>\n<p>        .media-item-wrapper {\n            flex: 0 0 auto; \/* \u9632\u6b62\u88ab\u538b\u7f29 *\/\n            width: 80%;     \/* \u79fb\u52a8\u7aef\u9ed8\u8ba4\u9732\u51fa\u4e00\u70b9\u4e0b\u4e00\u5f20\uff0c\u63d0\u793a\u53ef\u6ed1\u52a8 *\/\n            max-width: 500px; \/* \u684c\u9762\u7aef\u6700\u5927\u5bbd\u5ea6 *\/\n            aspect-ratio: 16\/9; \/* \u7edf\u4e00\u6bd4\u4f8b *\/<\/p>\n<p>            position: relative;\n            border-radius: 12px;\n            overflow: hidden;\n            border: 1px solid rgba(0,0,0,0.08);\n            background-color: #f5f5f5;\n            scroll-snap-align: center; \/* \u6eda\u52a8\u505c\u6b62\u65f6\u5c45\u4e2d *\/\n        }<\/p>\n<p>        .media-content {\n            width: 100%;\n            height: 100%;\n            object-fit: cover; \/* \u586b\u5145\u5bb9\u5668 *\/\n            display: block;\n            cursor: pointer;\n        }<\/p>\n<p>        \/* \u89c6\u9891\u6807\u7b7e\u7279\u6b8a\u5904\u7406 *\/\n        video.media-content {\n            background-color: #000;\n            cursor: pointer;\n        }<\/p>\n<p>        \/* \u5982\u679c\u53ea\u67091\u4e2a\u5a92\u4f53\uff0c\u4e0d\u8981\u6eda\u52a8\uff0c\u4e14\u5bbd\u5ea6\u81ea\u9002\u5e94 *\/\n        .media-gallery.single-item .media-item-wrapper {\n            width: 100%;\n            max-width: 100%;\n        }<\/p>\n<p>        \/* --- 3. \u63cf\u8ff0\u4e0e\u6807\u7b7e --- *\/\n        .one-liner {\n            font-size: 18px;\n            color: var(--text-secondary);\n            margin-bottom: 12px;\n            font-weight: 500;\n        }<\/p>\n<p>        .tags-container {\n            display: flex;\n            flex-wrap: wrap;\n            gap: 8px;\n            margin-bottom: 24px;\n        }<\/p>\n<p>        .tag {\n            font-size: 12px;\n            color: var(--text-secondary);\n            background-color: #F2F2F2;\n            padding: 4px 10px;\n            border-radius: 20px;\n            font-weight: 600;\n            text-transform: uppercase;\n        }<\/p>\n<p>        \/* --- 4. AI \u6458\u8981\u533a --- *\/\n        .ai-section {\n            background-color: var(--bg-ai);\n            border-radius: 12px;\n            padding: 20px;\n            margin-bottom: 20px;\n            border-left: 4px solid var(--ph-orange);\n        }<\/p>\n<p>        .ai-title {\n            font-size: 14px;\n            font-weight: 700;\n            color: var(--text-main);\n            margin: 0 0 12px 0;\n            display: flex;\n            align-items: center;\n            gap: 6px;\n        }<\/p>\n<p>        .ai-content {\n            font-size: 15px;\n            color: #333;\n            margin-bottom: 0;\n            line-height: 1.7;\n        }<\/p>\n<p>        \/* --- 5. \u8bc4\u8bba\u533a --- *\/\n        .reviews-section {\n            margin-top: 10px;\n        }<\/p>\n<p>        .review-item {\n            display: flex;\n            gap: 10px;\n            margin-bottom: 12px;\n            font-size: 14px;\n        }<\/p>\n<p>        .review-avatar {\n            font-size: 18px;\n            margin-top: 2px;\n            min-width: 24px;\n        }<\/p>\n<p>        .review-bubble {\n            background: #fff;\n            border: 1px solid var(--border-color);\n            padding: 8px 12px;\n            border-radius: 0 12px 12px 12px;\n            color: var(--text-secondary);\n            line-height: 1.5;\n        }<\/p>\n<p>        .review-author {\n            font-weight: 700;\n            color: var(--text-main);\n            margin-right: 4px;\n            font-style: normal;\n        }<\/p>\n<p>        .comments-section {\n            margin-top: 30px;\n            border-top: 1px solid var(--border-color);\n            padding-top: 20px;\n        }<\/p>\n<p>        .comments-toggle {\n            background-color: #f8f9fa;\n            border: 1px solid var(--border-color);\n            border-radius: 8px;\n            padding: 12px 20px;\n            cursor: pointer;\n            display: flex;\n            justify-content: space-between;\n            align-items: center;\n            width: 100%;\n            font-size: 14px;\n            font-weight: 600;\n            color: var(--text-main);\n            transition: all 0.3s ease;\n        }<\/p>\n<p>        .comments-toggle:hover {\n            background-color: #e9ecef;\n        }<\/p>\n<p>        .comments-toggle .toggle-arrow {\n            font-size: 18px;\n            transition: transform 0.3s ease;\n        }<\/p>\n<p>        .comments-toggle.open .toggle-arrow {\n            transform: rotate(180deg);\n        }<\/p>\n<p>        .comments-container {\n            max-height: 0;\n            overflow: hidden;\n            transition: max-height 0.5s ease;\n            margin-top: 15px;\n        }<\/p>\n<p>        .comments-container.open {\n            max-height: 800px;\n            overflow: auto;\n        }<\/p>\n<p>        .comment-item {\n            background-color: #fff;\n            border: 1px solid var(--border-color);\n            border-radius: 8px;\n            padding: 16px;\n            margin-bottom: 12px;\n            font-size: 14px;\n        }<\/p>\n<p>        .comment-header {\n            display: flex;\n            justify-content: space-between;\n            align-items: flex-start;\n            margin-bottom: 8px;\n        }<\/p>\n<p>        .comment-author {\n            font-weight: 600;\n            color: var(--text-main);\n            margin-right: 8px;\n        }<\/p>\n<p>        .comment-content {\n            color: var(--text-secondary);\n            line-height: 1.5;\n            margin-bottom: 10px;\n            word-break: break-word;\n            word-wrap: break-word;\n            overflow-wrap: anywhere;\n            white-space: normal;\n        }<\/p>\n<p>        .comment-content p {\n            margin: 0;\n            word-break: break-word;\n            word-wrap: break-word;\n            overflow-wrap: anywhere;\n            white-space: normal;\n        }<\/p>\n<p>        \/* \u4f18\u5316\u8868\u60c5\u7b26\u53f7\u663e\u793a *\/\n       .emoji {\n            display: inline;\n            max-width: 15px;\n            overflow-wrap: normal;\n        }<\/p>\n<p>        .comment-actions {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n            font-size: 12px;\n            color: var(--text-secondary);\n        }<\/p>\n<p>        .comment-vote {\n            display: flex;\n            align-items: center;\n            gap: 4px;\n            cursor: pointer;\n        }<\/p>\n<p>        .comment-replies {\n            margin-top: 12px;\n            margin-left: 20px;\n            padding-left: 12px;\n            border-left: 2px solid var(--border-color);\n        }<\/p>\n<p>        .reply-item {\n            background-color: #f8f9fa;\n            border: 1px solid var(--border-color);\n            border-radius: 6px;\n            padding: 12px;\n            margin-bottom: 8px;\n            font-size: 13px;\n        }<\/p>\n<p>        .reply-content {\n            color: var(--text-secondary);\n            line-height: 1.4;\n            margin-bottom: 6px;\n        }<\/p>\n<p>        \/* --- \u54cd\u5e94\u5f0f\u5fae\u8c03 --- *\/\n        @media (min-width: 600px) {\n            .media-item-wrapper {\n                width: 60%; \/* \u684c\u9762\u7aef\u7a0d\u5fae\u7a84\u4e00\u70b9\uff0c\u5c55\u793a\u66f4\u591a\u5f20 *\/\n                scroll-snap-align: start; \/* \u684c\u9762\u7aef\u9760\u5de6\u5bf9\u9f50 *\/\n            }\n        }<\/p>\n<p>        \/* \u79fb\u52a8\u8bbe\u5907\u54cd\u5e94\u5f0f\u4f18\u5316 *\/\n        @media (max-width: 599px) {\n            \/* \u6a21\u6001\u6846\u4f18\u5316 *\/\n            .modal-content {\n                max-width: 95%;\n                max-height: 85vh;\n                margin: 10vh auto;\n            }<\/p>\n<p>            .close {\n                top: 10px;\n                right: 20px;\n                font-size: 30px;\n                \/* \u589e\u5927\u70b9\u51fb\u533a\u57df *\/\n                padding: 15px;\n            }<\/p>\n<p>            \/* \u89c6\u9891\u64ad\u653e\u56fe\u6807\u4f18\u5316 *\/\n            .play-icon {\n                width: 60px;\n                height: 60px;\n                font-size: 18px;\n            }<\/p>\n<p>            \/* \u786e\u4fdd\u5a92\u4f53\u5185\u5bb9\u5728\u5c0f\u5c4f\u5e55\u4e0a\u6b63\u786e\u663e\u793a *\/\n            .media-content {\n                object-fit: cover;\n            }\n        }<\/p>\n<p>        \/* --- \u56fe\u7247\u653e\u5927\u6a21\u6001\u6846\u6837\u5f0f --- *\/\n        .modal {\n            display: none;\n            position: fixed;\n            z-index: 1000;\n            left: 0;\n            top: 0;\n            width: 100%;\n            height: 100%;\n            background-color: rgba(0, 0, 0, 0.9);\n            overflow: auto;\n            transition: opacity 0.3s ease;\n        }<\/p>\n<p>        .modal-content {\n            display: block;\n            max-width: 90%;\n            max-height: 90vh;\n            margin: 5vh auto;\n            object-fit: contain;\n            animation: zoom 0.3s;\n        }<\/p>\n<p>        @keyframes zoom {\n            from {transform: scale(0.8); opacity: 0;}\n            to {transform: scale(1); opacity: 1;}\n        }<\/p>\n<p>        .close {\n            position: absolute;\n            top: 20px;\n            right: 35px;\n            color: #fff;\n            font-size: 40px;\n            font-weight: bold;\n            transition: 0.3s;\n            cursor: pointer;\n            \/* \u6dfb\u52a0\u89e6\u63a7\u4f18\u5316 *\/\n            padding: 10px;\n            line-height: 1;\n            user-select: none;\n            -webkit-user-select: none;\n        }<\/p>\n<p>        .close:hover,\n        .close:focus {\n            color: #bbb;\n            text-decoration: none;\n        }<\/p>\n<p>        \/* \u89c6\u9891\u70b9\u51fb\u63d0\u793a\u6837\u5f0f *\/\n        .video-overlay {\n            position: absolute;\n            top: 0;\n            left: 0;\n            width: 100%;\n            height: 100%;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            background-color: rgba(0, 0, 0, 0.2);\n            opacity: 0;\n            transition: opacity 0.3s ease;\n            \/* \u89e6\u63a7\u4f18\u5316 *\/\n            touch-action: manipulation;\n            cursor: pointer;\n        }<\/p>\n<p>        .media-item-wrapper:hover .video-overlay {\n            opacity: 1;\n        }<\/p>\n<p>        \/* \u4e3a\u89e6\u6478\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u6548\u679c *\/\n        .media-item-wrapper:active .video-overlay {\n            opacity: 0.8;\n        }<\/p>\n<p>        .play-icon {\n            width: 80px;\n            height: 80px;\n            background-color: rgba(255, 255, 255, 0.9);\n            border-radius: 50%;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            color: var(--ph-orange);\n            font-size: 24px;\n            font-weight: bold;\n            \/* \u89e6\u63a7\u4f18\u5316 *\/\n            user-select: none;\n            -webkit-user-select: none;\n        }<\/p>\n<p>        \/* --- \u54cd\u5e94\u5f0f\u5fae\u8c03 --- *\/\n        @media (min-width: 600px) {\n            .media-item-wrapper {\n                width: 60%; \/* \u684c\u9762\u7aef\u7a0d\u5fae\u7a84\u4e00\u70b9\uff0c\u5c55\u793a\u66f4\u591a\u5f20 *\/\n                scroll-snap-align: start; \/* \u684c\u9762\u7aef\u9760\u5de6\u5bf9\u9f50 *\/\n            }\n        }<\/p>\n<p>        \/* \u79fb\u52a8\u8bbe\u5907\u54cd\u5e94\u5f0f\u4f18\u5316 *\/\n        @media (max-width: 599px) {\n            \/* \u6a21\u6001\u6846\u4f18\u5316 *\/\n            .modal-content {\n                max-width: 95%;\n                max-height: 85vh;\n                margin: 10vh auto;\n            }<\/p>\n<p>            .close {\n                top: 10px;\n                right: 20px;\n                font-size: 30px;\n                \/* \u589e\u5927\u70b9\u51fb\u533a\u57df *\/\n                padding: 15px;\n            }<\/p>\n<p>            \/* \u89c6\u9891\u64ad\u653e\u56fe\u6807\u4f18\u5316 *\/\n            .play-icon {\n                width: 60px;\n                height: 60px;\n                font-size: 18px;\n            }<\/p>\n<p>            \/* \u786e\u4fdd\u5a92\u4f53\u5185\u5bb9\u5728\u5c0f\u5c4f\u5e55\u4e0a\u6b63\u786e\u663e\u793a *\/\n            .media-content {\n                object-fit: cover;\n            }\n        }\n    <\/style>\n<p><\/head><br \/>\n<body><\/p>\n<div class=\"container\">\n<h1 style=\"text-align:center; margin-bottom:40px; font-weight:900;\">PH\u70ed\u699c | 2026-06-15<\/h1>\n<p>    <!-- \u5c55\u793aapp\u5361\u7247 --><\/p>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#1<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/YKCLFF3LPLDFWW\" class=\"app-title\">Novu Connect<\/a><\/p>\n<div class=\"one-liner\">Ship agents where your users already work<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">374<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Novu Connect\u901a\u8fc7\u7edf\u4e00API\u8ba9AI\u4ee3\u7406\u65e0\u9700\u91cd\u590d\u5f00\u53d1\uff0c\u5373\u53ef\u5728Slack\u3001 Teams\u3001 WhatsApp\u3001 Telegram\u548c\u90ae\u4ef6\u7b49\u7528\u6237\u65e5\u5e38\u4f7f\u7528\u7684\u6e20\u9053\u4e0a\u5b9e\u73b0\u53cc\u5411\u5bf9\u8bdd\uff0c\u89e3\u51b3\u4e86\u4ee3\u7406\u201c\u6700\u540e\u4e00\u516c\u91cc\u201d\u7684\u901a\u4fe1\u96c6\u6210\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e3269d05-7df8-47b9-9f69-0b1c48eb64c2.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/3567f175-7720-4ed2-ab1b-a81ba3b7b92e.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d29aa996-33a4-4ca6-b204-acf75721b6a1.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/7a5cb13d-07a3-4293-9282-032f5977672e.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/89c14717-d690-4245-87c4-cd7b50a6b2c4.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/cee7bc17-ae37-4bad-8893-ff8a7eb678b1.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/5c9d277c-8551-456b-8a1a-baaa97ebb7fc.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/0839f556-b05e-4d8f-a856-fd13f29dfcf6.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6dcf7417-6d80-43ea-99b9-77819c76af74.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/da3d960c-d916-4cf6-831a-927599cfdeac.jpeg?auto=format\" data-video-url=\"https:\/\/www.youtube.com\/watch?v=rZQM7IYwVCQ\"><source src=\"https:\/\/www.youtube.com\/watch?v=rZQM7IYwVCQ\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Open Source<\/span><br \/>\n            <span class=\"tag\">Developer Tools<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u4ee3\u7406\u901a\u4fe1\u57fa\u7840\u8bbe\u65bd<\/span><br \/>\n            <span class=\"tag\">\u591a\u6e20\u9053\u96c6\u6210<\/span><br \/>\n            <span class=\"tag\">AI\u4ee3\u7406<\/span><br \/>\n            <span class=\"tag\">\u53cc\u5411\u5bf9\u8bdd<\/span><br \/>\n            <span class=\"tag\">\u901a\u77e5\u5e73\u53f0<\/span><br \/>\n            <span class=\"tag\">\u5f00\u53d1\u8005\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">SaaS<\/span><br \/>\n            <span class=\"tag\">SOC2\u5408\u89c4<\/span><br \/>\n            <span class=\"tag\">\u5de5\u4f5c\u6d41\u81ea\u52a8\u5316<\/span><br \/>\n            <span class=\"tag\">\u5bf9\u8bdd\u5f0fAI<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u5173\u5fc3\u8de8\u6e20\u9053\u8eab\u4efd\u6620\u5c04\u4e0e\u4e0a\u4e0b\u6587\u4fdd\u6301\u3001\u4e92\u52a8UI\u652f\u6301\uff08\u5982\u6309\u94ae\uff09\u3001\u5ba1\u8ba1\u65e5\u5fd7\u3001\u6295\u9012\u72b6\u6001\u53cd\u9988\u3001\u6e20\u9053\u9009\u62e9\u7b56\u7565\uff0c\u4ee5\u53ca\u514d\u8d39\u5957\u9910\u3002\u56e2\u961f\u627f\u8bfa\u652f\u6301LinkedIn\uff0c\u5e76\u5efa\u8bae\u5728GitHub\u63d0\u4ea4\u9700\u6c42\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Novu Connect\u5207\u5165\u4e86\u4e00\u4e2a\u6781\u5177\u4ef7\u503c\u4f46\u53c8\u5bb9\u6613\u88ab\u5ffd\u89c6\u7684\u201c\u810f\u6d3b\u7d2f\u6d3b\u201d\u2014\u2014AI\u4ee3\u7406\u7684\u591a\u6e20\u9053\u901a\u4fe1\u5c42\u3002\u5b83\u7684\u6838\u5fc3\u5356\u70b9\u5e76\u975e\u70ab\u9177\u7684\u6a21\u578b\u6216\u7b97\u6cd5\uff0c\u800c\u662f\u201c\u786e\u5b9a\u6027\u201d\u548c\u201c\u7701\u5fc3\u201d\u3002\u5728\u4ea7\u54c1\u5982\u96e8\u540e\u6625\u7b0b\u822c\u6d8c\u73b0\u7684\u5f53\u4e0b\uff0c\u8bb8\u591aAI\u5e94\u7528\u6b7b\u5728\u4e86\u201c\u80fd\u60f3\u201d\u4f46\u201c\u4e0d\u4f1a\u8bf4\u8bdd\u201d\u7684\u6700\u540e\u4e00\u516c\u91cc\u3002Novu\u7684\u201cACI\u201d\u6982\u5ff5\uff0c\u8bd5\u56fe\u5c06\u901a\u4fe1\u5c42\u4ece\u96f6\u6563\u7684\u975e\u6838\u5fc3\u5de5\u4f5c\uff0c\u5305\u88c5\u6210\u4e00\u4e2a\u6807\u51c6\u5316\u7684\u57fa\u7840\u8bbe\u65bd\u670d\u52a1\uff0c\u8fd9\u5f88\u806a\u660e\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4ece\u4ea7\u54c1\u4ecb\u7ecd\u548c\u8bc4\u8bba\u770b\uff0c\u5176\u6280\u672f\u58c1\u5792\u5728\u4e8e\u201c\u7edf\u4e00\u201d\u4e8c\u5b57\u4e4b\u4e0b\u7684\u590d\u6742\u5de5\u7a0b\u2014\u2014\u5305\u62ec\u8eab\u4efd\u6620\u5c04\u3001\u4f1a\u8bdd\u7ebf\u7a0b\u3001\u683c\u5f0f\u8f6c\u6362\u3001\u6295\u9012\u8bed\u4e49\uff08\u91cd\u8bd5\u3001\u56de\u9000\u3001\u53bb\u91cd\uff09\u3002\u8fd9\u4e9b\u95ee\u9898\u770b\u4f3c\u7410\u788e\uff0c\u5374\u76f4\u63a5\u51b3\u5b9a\u4e86\u4e00\u4e2aAI\u4ee3\u7406\u80fd\u5426\u5728\u4f01\u4e1a\u573a\u666f\u4e0b\u771f\u6b63\u8dd1\u901a\u3002\u8bc4\u8bba\u4e2d\u7528\u6237\u5bf9\u5ba1\u8ba1\u3001\u72b6\u6001\u8ffd\u8e2a\u3001\u4e92\u52a8UI\u7684\u8ffd\u95ee\uff0c\u6070\u6070\u5370\u8bc1\u4e86\u4f01\u4e1a\u7ea7\u5e94\u7528\u5bf9\u201c\u53ef\u89c2\u6d4b\u6027\u201d\u548c\u201c\u4ea4\u4e92\u4f53\u9a8c\u201d\u7684\u521a\u6027\u9700\u6c42\uff0c\u800c\u975e\u7b80\u5355\u7684\u201c\u53d1\u4e00\u6761\u6d88\u606f\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46Novu\u9700\u8981\u8b66\u60d5\u7684\u662f\uff0c\u5176\u5ba3\u79f0\u7684\u201c\u4e0d\u8fd0\u884c\u4e1a\u4e3b\u8111\u201d\u867d\u662f\u5dee\u5f02\u5316\u5b9a\u4f4d\uff08\u907f\u514d\u4e0e\u6a21\u578b\u5382\u5546\u7ade\u4e89\uff09\uff0c\u5374\u4e5f\u610f\u5473\u7740\u4ef7\u503c\u951a\u70b9\u5b8c\u5168\u53d6\u51b3\u4e8e\u96c6\u6210\u5c42\u7684\u521a\u9700\u7a0b\u5ea6\u3002\u5982\u679c\u672a\u6765\u4e3b\u6d41\u6a21\u578b\uff08\u5982Claude, ChatGPT\uff09\u539f\u751f\u96c6\u6210\u4e86\u591a\u6e20\u9053\u8f93\u51fa\u80fd\u529b\uff0cNovu\u7684\u201c\u7ba1\u9053\u201d\u4ef7\u503c\u5c06\u88ab\u8fc5\u901f\u7a00\u91ca\u3002\u56e0\u6b64\uff0cNovu\u771f\u6b63\u7684\u62a4\u57ce\u6cb3\u4e0d\u5728\u4e8eAPI\u672c\u8eab\uff0c\u800c\u5728\u4e8e\u5176\u5bf9\u201c\u901a\u9053\u590d\u6742\u6027\u548c\u4f01\u4e1a\u5408\u89c4\u6027\u201d\u7684\u957f\u671f\u6df1\u8015\u2014\u2014SOC2\u3001HIPAA\u8ba4\u8bc1\uff0c\u4ee5\u53ca\u5904\u7406\u8fc7\u7684\u8fb9\u7f18\u6848\u4f8b\u6570\u91cf\uff0c\u624d\u662f\u5176\u6700\u786c\u6838\u7684\u8d44\u4ea7\u3002\u4e00\u53e5\u8bdd\u603b\u7ed3\uff1a\u5b83\u662fAI\u65f6\u4ee3\u7684Twilio\uff0c\u4f46\u80fd\u5426\u4ece\u201c\u5b9e\u7528\u5de5\u5177\u201d\u5347\u7ea7\u4e3a\u201c\u5fc5\u5907\u57fa\u7840\u8bbe\u65bd\u201d\uff0c\u53d6\u51b3\u4e8e\u5b83\u80fd\u5426\u5728\u6a21\u578b\u5de8\u5934\u52a8\u624b\u4e4b\u524d\uff0c\u51ed\u501f\u590d\u6742\u7684\u8eab\u4efd\u4e0e\u72b6\u6001\u7ba1\u7406\u6df1\u5ea6\uff0c\u7ed1\u5b9a\u4f4f\u5f00\u53d1\u8005\u751f\u6001\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Novu Connect<\/span>\n                <\/div>\n<div class=\"comment-content\">Novu Connect lets any AI agent have two-way conversations across Slack, Teams, WhatsApp, Telegram, and email without building each channel integration yourself. Bring your own agent logic, model, or code. Novu handles the communication layer: delivery, identity resolution, threading, routing, and channel-specific formatting, so your agent can reach users where they already work.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hi everyone, I&#8217;m Tomer, co-founder at Novu.<\/p>\n<p>Dima covered the what. Let me cover why it matters.<\/p>\n<\/p>\n<p>The agents people are building no longer just answer questions in a chat box. They send approvals, ask follow-ups, escalate, and report back. For any of that to work, the agent has to reach a real human on the channel that human actually uses, hold the thread, and pick the conversation back up when they reply. That last mile is where most agents stall, and fail to deliver value.<\/p>\n<\/p>\n<p>Novu Connect is that last mile. Connecting Agents to Humans on every channel. And it runs on infrastructure teams already trust in production, with SOC 2, HIPAA, and ISO 27001. Not a brand-new unknown stack, the proven one, now two-way.<\/p>\n<\/p>\n<p>Easiest way to feel it: open the terminal you already have Claude in and prompt Add an agent to my app <a href=\"https:\/\/novu.co\/agents.md\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/novu.co\/agents.md<\/a>. A timer starts, and under 60 seconds later your agent is talking on Slack, Teams, WhatsApp, Telegram, or email. Then message it back and watch it hold the thread.<\/p>\n<p>We built this for you. Tell us what is missing, we are listening all day. \ud83d\ude4c<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>35<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tomer_barnea1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tomer_barnea1<\/a>&nbsp;The captain! What an amazing journey we have in Novu! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tomer_barnea1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tomer_barnea1<\/a>&nbsp;This is interesting. The biggest challenge I&#8217;ve seen with AI agents is maintaining context across multiple human interactions and channels. How does Novu Connect handle long-running conversations when users switch between Slack, email, and WhatsApp?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tomer_barnea1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tomer_barnea1<\/a>&nbsp;\ud83e\udef6\ud83c\udffb<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt \ud83d\udc4b I&#8217;m Dima, CTO and co-founder of Novu.<\/p>\n<\/p>\n<p>For four years we&#8217;ve built the open-source notification infrastructure that 40k+ developers use to reach their users across Slack, email, push, and more everyday. Then AI agents arrived and we kept hitting the same wall: agents got incredibly good at thinking, but they still cannot properly communicate to the people they work for. Every channel has its own webhooks, identity model, and threading, so you rebuild the same plumbing for Slack, then Teams, then WhatsApp. It is weeks of work that has nothing to do with your agent. <\/p>\n<p>So we built Novu Connect.<\/p>\n<\/p>\n<p>It gives your agent a voice across multiple through unified API. We are naming this layer ACI, Agent Communication Infrastructure. MCP connected agents to tools. A2A connected agents to each other. ACI connects agents to people.<\/p>\n<\/p>\n<p>The line we will not cross: we never run your agents brain. Bring Claude Managed Agent or your custom code with AI SDK\/Langchain, and Novu just carries the conversation.<\/p>\n<\/p>\n<p>Pro tip, try it without leaving your terminal: open the terminal where you already have Claude running and prompt it: Add an agent to my app <a href=\"https:\/\/novu.co\/agents.md\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/novu.co\/agents.md<\/a>.  No account needed, try it out.<\/p>\n<\/p>\n<p>I&#8217;ll be in the comments all day. Would love your honest, technical feedback. \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>8<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dima_grossman\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dima_grossman<\/a>&nbsp;Love that terminal trick, but how does it handle identity mapping if the exact same user talks to the agent on both Slack and whastapp?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dima_grossman\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dima_grossman<\/a>&nbsp;<strong>Congratulations on your launch!<\/strong> it\u2019s a great innovation; it solves a real problem<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Standard text is fine but interactive elements like slack buttons or whataap quicl replyes really drive engagmetns for bots, can our agents pass intereactive ui payloads through Novo connect ?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>6<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@priya_kushwaha1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@priya_kushwaha1<\/a>&nbsp;Yes, we support buttons, reasoning cards, typing indicators, and media! <\/p>\n<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6b8b55ec-b648-481b-9a03-f5940b7a1dd1.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@priya_kushwaha1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@priya_kushwaha1<\/a>&nbsp;Not just that, we\u2019re taking all in word-class level of conversation experience starting from the eyes emoji when the conversation starts and going on and on. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Damn this is clean\ud83d\ude0e<\/p>\n<p>How do I manage audit logs and see what my agent actually sent?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>6<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jonathan_kahn1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jonathan_kahn1<\/a>&nbsp;You can visit the Conversations page and see the full trail of communication, tool calls across all the communication channels the Agent is connected to. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>5<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jonathan_kahn1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jonathan_kahn1<\/a>&nbsp;thank for your support!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This solves a real pain for us honestly &#8211; can I see delivery status, like did the human actually get it?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Hi <a href=\"https:\/\/www.producthunt.com\/@avia_chen\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@avia_chen<\/a>&nbsp;, this is channel specific, but any channel that exposes this data like email, you will see the full seen, open, engaged flow on our analytics page! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@avia_chen\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@avia_chen<\/a>&nbsp;my man! What about connecting ChargeFlow agent to the customers?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Is there any hope of integrating with Linkedin chat messaging? either corporate or personal?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jake_levant1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jake_levant1<\/a>&nbsp;not at the moment, but we have quite an extensive list of things we want to support in the upcoming weeks and months. Could you share a little about your usecase?<\/p>\n<p>In the meanwhile do you mind submitting an issue here <a href=\"https:\/\/github.com\/novuhq\/novu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/github.com\/novuhq\/novu<\/a> so we can keep track of this? <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Just tried the Claude prompt. Mind = blown. What\u2019s the latency like on WhatsApp replies?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@oreofe_oluwatipin1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@oreofe_oluwatipin1<\/a>&nbsp;I would almost instant. Even tho, so far Telegram is the fastest one to respond. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats! \ud83d\ude4c <\/p>\n<\/p>\n<p>Love the idea of ACI, it solves a real pain point of building and doing all hassle with the integrations layer, which is a huge distraction where at the end you want just to ship the agent quickly. <\/p>\n<\/p>\n<p>I will be definitely using it for my side projects to create, automate, research, part of the work I do manualy. And I am waiting for the scheduling support!\ud83d\ude0a<\/p>\n<\/p>\n<p>I am curious what others have alredy  build on top of this?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@pawel_tymczuk\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@pawel_tymczuk<\/a>&nbsp;I build a Google Ads optimizer checking our Google Ads preferences every week and make changes. We chat on Slack like teammates. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Super cool. Can I use this to allow me to chat with my bot via Whatsapp?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tomer_dean\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tomer_dean<\/a>&nbsp;Yes! Just follow the WhatsApp connect onboarding flow, you will need to connect your Facebook account. I&#8217;ve built a few personal assistants that I chat with on WhatsApp every day<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tomer_dean\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tomer_dean<\/a>&nbsp;thanks for your support! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Emil here, I work on the marketing side at Novu.<\/p>\n<\/p>\n<p>The founders have already covered the what and the why, so I&#8217;ll just add the one thing that made this click for me.<\/p>\n<\/p>\n<p>For months, we kept saying &#8220;connect agents to channels.&#8221; But the longer I sat with it, the more I realized connecting a channel is the easy part. <\/p>\n<\/p>\n<p>The hard, unglamorous part is keeping one conversation coherent when a user starts on Slack, replies from WhatsApp, and finishes over email. For the agent, it should be a single thread. Same memory, same context. That continuity is the whole point, and it is genuinely hard to build.<\/p>\n<\/p>\n<p>The moment it stopped being a slide and became real for me was watching an agent go live on an actual channel in about two minutes, no API key, no plumbing.<\/p>\n<\/p>\n<p>If you&#8217;re building agents, I&#8217;d love for you to try it and tell me where it surprises you or where it breaks. <\/p>\n<p>Start free: <a href=\"http:\/\/novu.co\/connect\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">novu.co\/connect<\/a><\/p>\n<\/p>\n<p>So, which channel would you put your agent on first?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@emilpearce\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@emilpearce<\/a>&nbsp;Let&#8217;s go for the win!! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! The &#8220;last mile&#8221; framing really resonates \u2014 connecting agents to humans on the channels they already use is exactly where so many agent projects stall. Love that you&#8217;re building on infrastructure that&#8217;s already SOC 2\/HIPAA\/ISO ready rather than a brand-new stack. Curious: when an agent spans Slack + WhatsApp + email for the same user, how do you decide which channel to reach them on first, or is that fully configurable by the maker?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@doganakbulut\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@doganakbulut<\/a>&nbsp;You have full control on selecting the channel, and your customers can follow up on the best channel for <strong>them<\/strong> that&#8217;s where the agent to human piece comes in place. Great question!<\/p>\n<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>love what novu has been building for a while now \u2014 super clean product and strong vision.<\/p>\n<p>aci is especially exciting, had a chance to connect with <a href=\"https:\/\/www.producthunt.com\/@tomer_barnea1\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"tomer_barnea1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tomer_barnea1<\/a> and it really feels like the future of notifications. big congrats to the team on the launch \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@amanintech\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@amanintech<\/a>&nbsp;Hi! Thanks for that! I agree, the future is going to be communication, and notifications are going to plat a part of it, very exciting. <\/p>\n<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch. The piece I&#8217;d want to understand before adopting a notifications layer is failure semantics: when a downstream provider (email\/SMS\/push) is degraded, does Novu retry with backoff and fall back to the next channel automatically, or is that orchestration something I define per workflow? Dedupe across channels is the other one \u2014 stopping a user getting the same alert by email AND push.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@mikebrandswarm\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@mikebrandswarm<\/a>&nbsp;Yes, Novu performs a back-off retry on delivery. You can also swap provider across the channel in case of a single provider is down. Ofcourse, with providers like Slack it&#8217;s not the case, since the user is uniquely authenticated to their Slack workspace and there is &#8220;no&#8221; alternative available. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Strong launch. The hardest part of agent UX is meeting users inside existing workflows; Slack\/Teams\/email threading + identity resolution is exactly the unglamorous glue. Curious how you handle conversation state when the same user jumps channels?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;We provide the context of each conversation thread, so every time a new conversation starts on different channels\/dms a new conversation is created for that thread. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Excited to try it. What&#8217;s the free tier look like for someone just experimenting?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@_eyalbaruch\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@_eyalbaruch<\/a>&nbsp;you can create a free account and have 2 agents running without credit card \ud83c\udf89<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Incredible launch, team Novu! \ud83d\ude80 &#8216;Bring your own brain, Novu handles the voice&#8217; is the perfect line. It\u2019s awesome to see a trusted open-source notification stack evolve into a robust two-way conversational layer for AI. Bookmarking this for my next build!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@moon10\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@moon10<\/a>&nbsp;It was the most intuitive thing for us, we&#8217;ve been sending notification on all those channels for years now at scale. Now, it&#8217;s time to convert the same transactional notification to a conversation!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This solves a real pain for us honestly, can I see delivery status, like did the human actually get it?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@roypovar\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@roypovar<\/a>&nbsp;Yes! you can see it all under the Conversations page of your connected agent \ud83c\udf89<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@roypovar\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@roypovar<\/a>&nbsp;thanks for your support! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! \ud83d\ude80<\/p>\n<p>The &#8220;-second rule for terminal-to-channel connectivity is a huge win for developer velocity. Running npx novu connect to bridge agents with Slack or WhatsApp that quickly sounds like a dream for anyone building in the AI agent space right now.<\/p>\n<\/p>\n<p>Can&#8217;t wait to see how this simplifies multi-channel notifications! Just curious, how do you handle the auth\/handshake for the more walled garden channels like WhatsApp within that minute?<\/p>\n<\/p>\n<p>Good luck today!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@yam_regev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@yam_regev<\/a>&nbsp;Each channel is a unique challenge for removing onboarding friction, and the team get&#8217;s quite creative about it. Soon, Whatsapp will be even simpler!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@yam_regev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@yam_regev<\/a>&nbsp;my man! thank you for you all support!! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch. The \u201cagent-to-human last mile\u201d framing is strong, especially because teams already live in Slack, Teams, WhatsApp, and email. The part I\u2019d love to understand better is the governance layer: when the same user talks to an agent across multiple channels, how do you handle identity mapping, audit logs, and permission boundaries so the agent has enough context without exposing too much history to every operator?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats! Curious how does Novu Connect handle context continuity if the human switches mid-conversation from one channel to another<\/p>\n<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Go team Novu!!!<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is huge for human-in-the-loop workflows. being able to ping a manager on slack for an approval button while the agent talks to a client on whatsapp is exactly what we need. awesome launch\ud83d\ude4c<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vikramp7470\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vikramp7470<\/a>&nbsp;Thank you Vikram! Looking forward to see what you will build with it \u26a1<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Smart. Can multiple agents share one comms layer or is it one per agent?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dalgeitsch\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dalgeitsch<\/a>&nbsp;Yes, actually, internally we have around 50 different agents on Slack the team has created for various usecases. Similiarly, you might have hundreds of agents, each with it&#8217;s own email inbox responding to different &#8220;users&#8221; of your system. But same brain does the logic part.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#2<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/4YVEDAOI6CJSFN\" class=\"app-title\">Wobo 2.0<\/a><\/p>\n<div class=\"one-liner\">Tinder for jobs: swipe right and AI applies for you<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">275<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Wobo 2.0 \u662f\u4e00\u6b3e\u201c\u6c42\u804c\u7248Tinder\u201d\uff0c\u901a\u8fc7AI\u4e3a\u6c42\u804c\u8005\u81ea\u52a8\u5728\u4f01\u4e1a\u5b98\u7f51\u5b8c\u6210\u7b80\u5386\u548c\u6c42\u804c\u4fe1\u7684\u6295\u9012\uff0c\u89e3\u51b3\u6d77\u6295\u6548\u7387\u4f4e\u3001\u8868\u5355\u91cd\u590d\u586b\u5199\u548c\u865a\u5047\u804c\u4f4d\u7b5b\u9009\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/79bf37c2-ac24-4548-ba56-d1c4d35061c7.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/481bf607-01ed-4aef-b760-1e5c9441a417.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/4070f678-e5dd-4667-8c31-fef53985f62c.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a5c5e034-0d08-4c88-b523-3f03b66a9b8a.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/2421c63d-a631-4a77-8d83-cba7d6eba2bd.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/b254b9c8-052d-419d-a8b1-3fb196fd0d55.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/CBy6rvjnI9Y\"><source src=\"https:\/\/youtu.be\/CBy6rvjnI9Y\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">Career<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u6c42\u804c\u52a9\u624b<\/span><br \/>\n            <span class=\"tag\">\u81ea\u52a8\u6295\u9012<\/span><br \/>\n            <span class=\"tag\">\u7b80\u5386\u5b9a\u5236<\/span><br \/>\n            <span class=\"tag\">\u6c42\u804c\u5339\u914d<\/span><br \/>\n            <span class=\"tag\">Tinder\u5f0f\u4f53\u9a8c<\/span><br \/>\n            <span class=\"tag\">\u6c42\u804c\u6548\u7387\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u4ea7\u54c1\u730e<\/span><br \/>\n            <span class=\"tag\">\u62db\u8058\u79d1\u6280<\/span><br \/>\n            <span class=\"tag\">\u667a\u80fdAgent<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u201c\u4f01\u4e1a\u5b98\u7f51\u6295\u9012\u201d\u548c\u201c\u8bed\u97f3\u5b9a\u5236\u201d\u7684\u4ef7\u503c\uff0c\u4f46\u4e3b\u8981\u62c5\u5fe7\u96c6\u4e2d\u5728\uff1a1\uff09AI\u56de\u7b54\u5b9a\u5236\u95ee\u9898\u7684\u51c6\u786e\u6027\u4e0e\u9884\u5ba1\u7f3a\u5931\uff1b2\uff09\u4e2a\u6027\u5316\u662f\u5426\u4f1a\u968f\u7528\u6237\u589e\u591a\u800c\u8d8b\u540c\uff1b3\uff09\u56fd\u5bb6\u8986\u76d6\u8303\u56f4\u6709\u9650\uff0c\u5bf9\u975e\u6b27\u7f8e\u5e02\u573a\u652f\u6301\u4e0d\u8db3\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Wobo 2.0 \u5728\u4ea7\u54c1\u5f62\u6001\u4e0a\u505a\u4e86\u4e00\u4e2a\u806a\u660e\u7684\u53d6\u820d\uff1a\u5b83\u6ca1\u6709\u9677\u5165\u201cAI\u66ff\u4ee3\u4eba\u201d\u7684\u6280\u672f\u70ab\u6280\u9677\u9631\uff0c\u800c\u662f\u7cbe\u51c6\u5730\u5207\u5165\u4e86\u6c42\u804c\u6d41\u7a0b\u4e2d\u6700\u673a\u68b0\u3001\u6700\u8017\u65f6\u7684\u201c\u586b\u8868\u2014\u6295\u9012\u201d\u73af\u8282\u3002\u5176\u672c\u8d28\u662f\u4e00\u4e2a\u81ea\u52a8\u5316RPA\uff08\u673a\u5668\u4eba\u6d41\u7a0b\u81ea\u52a8\u5316\uff09\u5de5\u5177\uff0c\u4f46\u5957\u4e0a\u4e86\u201cAI Agent\u201d\u548c\u201cTinder\u201d\u7684\u4ea4\u4e92\u5916\u58f3\uff0c\u8fd9\u79cd\u505a\u6cd5\u65e2\u964d\u4f4e\u4e86\u7528\u6237\u7684\u5fc3\u7406\u95e8\u69db\uff0c\u4e5f\u589e\u52a0\u4e86\u4ea7\u54c1\u7684\u8da3\u5473\u6027\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u6838\u5fc3\u4ef7\u503c\u4e0d\u5728\u4e8e\u201c\u667a\u80fd\u5339\u914d\u201d\uff0c\u800c\u5728\u4e8e\u201c\u4f01\u4e1a\u5b98\u7f51\u76f4\u6295\u201d\u3002\u4e0e\u5e02\u9762\u591a\u6570\u201c\u4e00\u5065\u6d77\u6295\u201d\u201cEasy Apply\u201d\u7c7b\u5de5\u5177\uff08\u5bb9\u6613\u88ab\u5224\u5b9a\u4e3a\u5783\u573e\u7533\u8bf7\uff09\u4e0d\u540c\uff0cWobo\u901a\u8fc7\u6a21\u62df\u771f\u4eba\u624b\u52a8\u586b\u62a5\uff0c\u7ed5\u8fc7\u4e86ATS\uff08\u7533\u8bf7\u8005\u8ffd\u8e2a\u7cfb\u7edf\uff09\u548c\u62db\u8058\u5b98\u7684\u201c\u50f5\u5c38\u7b80\u5386\u201d\u8fc7\u6ee4\uff0c\u8fd9\u76f4\u63a5\u5207\u4e2d\u804c\u573a\u4eba\u58eb\u7684\u6df1\u5c42\u7126\u8651\u2014\u2014\u52aa\u529b\u4e0d\u88ab\u770b\u89c1\u3002\u521b\u59cb\u4eba\u5bf9\u201c\u8868\u5355\u53d8\u4f53\u201d\u548c\u201c\u81ea\u5b9a\u4e49\u95ee\u9898\u201d\u7684\u5904\u7406\u903b\u8f91\u503c\u5f97\u80af\u5b9a\uff1a\u4e0d\u9760\u7a77\u4e3e\u89c4\u5219\uff0c\u800c\u662f\u4ee5\u201c\u7528\u6237Profile+\u5b9e\u65f6\u53cd\u9988\u201d\u4f5c\u4e3a\u552f\u4e00\u4fe1\u6e90\uff0c\u786e\u4fdd\u8f93\u51fa\u7684\u4fdd\u5b88\u53ef\u9760\u3002\u8fd9\u79cd\u201c\u5b81\u53ef\u6f0f\u6295\uff0c\u51b3\u4e0d\u9519\u586b\u201d\u7684\u7b56\u7565\uff0c\u662f\u4fdd\u62a4\u7528\u6237\u804c\u4e1a\u58f0\u8a89\u7684\u5e95\u7ebf\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u4ea7\u54c1\u4ecd\u9762\u4e34\u4e25\u5cfb\u7684\u8003\u9a8c\u3002\u7b2c\u4e00\uff0c\u89c4\u6a21\u5316\u7684\u6096\u8bba\uff1a\u5f53100\u4e07\u7528\u6237\u90fd\u4f7f\u7528Wobo\u65f6\uff0c\u90a3\u4e9b\u88ab\u5305\u88c5\u6210\u201c\u4e13\u5c5e\u8bed\u97f3\u201d\u7684\u7533\u8bf7\uff0c\u4f1a\u4e0d\u4f1a\u5728HR\u7aef\u5448\u73b0\u51fa\u60ca\u4eba\u7684\u540c\u8d28\u5316\uff1f\u5f53\u524d\u201c\u7528\u6237\u53cd\u9988\u4f18\u5316\u201d\u673a\u5236\u9762\u5bf9\u6d77\u91cf\u6570\u636e\u65f6\uff0c\u5176\u6709\u6548\u6027\u5b58\u7591\u3002\u7b2c\u4e8c\uff0c\u4fe1\u4efb\u6210\u672c\u8fc7\u9ad8\uff1a\u5173\u952e\u7533\u8bf7\u6750\u6599\u5728\u63d0\u4ea4\u540e\u201c\u9a6c\u540e\u70ae\u201d\u5f0f\u5ba1\u67e5\uff0c\u4e00\u65e6\u51fa\u73b0\u4fe1\u606f\u9519\u914d\u6216\u56de\u7b54\u5931\u5f53\uff0c\u9020\u6210\u7684\u804c\u4e1a\u635f\u5931\u662f\u7528\u6237\u65e0\u6cd5\u63a5\u53d7\u7684\u3002\u6539\u8fdb\u5fc5\u987b\u5148\u4e8e\u53d1\u5e03\u3002\u7b2c\u4e09\uff0c\u5546\u4e1a\u6a21\u5f0f\u7684\u786c\u8fb9\u754c\uff1a\u514d\u8d39\u6a21\u5f0f\u80cc\u540e\uff0c\u5fc5\u7136\u4f9d\u9760\u201cAutopilot\u201d\u4ed8\u8d39\u8f6c\u5316\u3002\u4f46\u6c42\u804c\u8005\u4ed8\u8d39\u610f\u613f\u6781\u4f4e\uff0c\u9664\u975e\u4ea7\u54c1\u80fd\u5f62\u6210\u7c7b\u4f3c\u201cOffer\u5230\u8fbe\u7387\u201d\u7684\u98de\u8f6e\u6548\u5e94\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u603b\u7ed3\uff1aWobo\u662f\u4e00\u6b3e\u4f18\u79c0\u7684\u4ea7\u54c1\u6267\u884c\u6848\u4f8b\uff0c\u4f46\u5c1a\u672a\u8bc1\u660e\u81ea\u5df1\u662f\u4e00\u4e2a\u53ef\u6301\u7eed\u7684\u5546\u4e1a\u5de5\u5177\u3002\u5b83\u6700\u7280\u5229\u7684\u6d1e\u5bdf\u662f\uff1a\u5728AI\u65f6\u4ee3\uff0c\u5e2e\u7528\u6237\u8282\u7701\u65f6\u95f4\u7684\u4ef7\u503c\u5c06\u8d8a\u6765\u8d8a\u5927\uff1b\u4f46\u6700\u5927\u7684\u98ce\u9669\u5728\u4e8e\uff0c\u5b83\u53ef\u80fd\u4e3a\u4e86\u8282\u7701\u7528\u62371\u5206\u949f\uff0c\u5374\u65ad\u9001\u4e86\u7528\u6237\u7684\u4e00\u6b21\u673a\u4f1a\u3002\u5148\u6d3b\u8fc710\u4e07\u6b21\u771f\u5b9e\u6295\u9012\u7684\u9a8c\u8bc1\uff0c\u518d\u8c08\u98a0\u8986\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Wobo 2.0<\/span>\n                <\/div>\n<div class=\"comment-content\">Swipe right. Applied. Wobo is your personal AI recruiter. It matches pre-vetted jobs to your background, then applies on each company&#8217;s own site for you. Your resume, cover letter, and every application question: all written in your voice, so it reads like you wrote it, not a bot. No endless forms. No ghost listings. Just swipe, and wake up to interviews.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt \ud83d\udc4b<\/p>\n<\/p>\n<p>I&#8217;m Serdar. I built Wobo with my co-founder Taha. Here&#8217;s the rundown.<\/p>\n<\/p>\n<p><strong>What it is:<\/strong> It&#8217;s <strong>Tinder for jobs<\/strong>. You swipe right on a role, and Wobo applies for you on the company&#8217;s own site.<\/p>\n<\/p>\n<p><strong>Why we built it:<\/strong> Even finding the right roles meant checking LinkedIn, Indeed, then digging through company career pages one by one. Then for each one came the grind: read the full description, research the company, spend 20 minutes refilling the same forms, tailor a resume and cover letter to boost our odds, then pray it wasn&#8217;t a scam or a ghost listing. <\/p>\n<\/p>\n<p>So we built Wobo. Now all of that is one swipe.<\/p>\n<\/p>\n<p><strong>How it works<\/strong><\/p>\n<ol>\n<li>\n<p>You tell Wobo what kind of role you&#8217;re after, and it builds your <strong>Wobo Persona<\/strong>, a digital twin shaped by your background, experience, and your voice.<\/p>\n<\/li>\n<li>\n<p>It scans the market daily and brings you the best matches, including jobs that never hit LinkedIn or Indeed.<\/p>\n<\/li>\n<li>\n<p>You swipe through them and keep the ones you like.<\/p>\n<\/li>\n<li>\n<p>Wobo applies on each company&#8217;s own site for you, with a resume and cover letter tailored to that job and written in your voice, exactly how you would.<\/p>\n<\/li>\n<\/ol>\n<p><strong>What makes it different:<\/strong> The core is your <strong>Wobo Persona<\/strong>. Every answer it writes and every job it applies to, you can give feedback on, and it learns, so over time it sounds more and more like you. That&#8217;s why Wobo applications read like you wrote them, not generic AI. And unlike tools that spam recruiters or just auto-fill LinkedIn Easy Apply, Wobo applies on each company&#8217;s real site, only to roles you picked.<\/p>\n<\/p>\n<p><strong>What you get<\/strong><\/p>\n<ul>\n<li>\n<p><strong>Pre-vetted companies, scored on real signals.<\/strong> Every company gets a Wobo Score before its roles reach you. No ghost listings, no scams.<\/p>\n<\/li>\n<li>\n<p><strong>A fit score on every match,<\/strong> so you decide in seconds.<\/p>\n<\/li>\n<li>\n<p><strong>The whole company in one card:<\/strong> salary, ratings, benefits, and culture, so you can judge it before you apply.<\/p>\n<\/li>\n<li>\n<p><strong>One swipe replaces a 26-minute application.<\/strong><\/p>\n<\/li>\n<\/ul>\n<p><strong>Who it&#8217;s for: <\/strong>Anyone job hunting right now, from internships to senior roles, who&#8217;s tired of drowning in applications.<\/p>\n<\/p>\n<p><strong>Try it<\/strong>: It&#8217;s completely free, on web and iOS. I&#8217;d love your honest feedback: what would make you swipe right, and what&#8217;s missing?<\/p>\n<\/p>\n<p>100k+ people use it now, and my sister even found a job through it, which still feels strange to say. I&#8217;ll be here all day, and a big thank you to Rohan for hunting us.<\/p>\n<\/p>\n<p>Serdar (and Taha)<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>14<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@serdaraksoy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@serdaraksoy<\/a>&nbsp;Nice concept. Job searching can be incredibly time-consuming, so having an AI assistant that helps automate applications and surface better-matched opportunities could make the process much less overwhelming. Curious how Wobo balances automation with keeping applications personalized.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@serdaraksoy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@serdaraksoy<\/a>&nbsp;When Serdar reached out to me, I initially thought Wobo AI was just another AI job-applying tool. I asked him, \u201cWhat\u2019s different, and why should I hunt this?\u201d and he was incredibly clear about how it transforms job hunting.<\/p>\n<\/p>\n<p>Wobo AI is \u201cTinder for jobs\u201d&#8230; you swipe right on a role, and its AI applies for you on the company\u2019s official career site, filling out real forms, writing tailored resumes and cover letters in your voice, and learning from your feedback. <\/p>\n<\/p>\n<p>Thrilled to showcase Wobo AI on the leaderboard today and getting strong community support. Many congratulations to <a href=\"https:\/\/www.producthunt.com\/@serdaraksoy\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"serdaraksoy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@serdaraksoy<\/a> and <a href=\"https:\/\/www.producthunt.com\/@taha_keles\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"taha_keles\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@taha_keles<\/a> \ud83d\ude42 <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>9<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@serdaraksoy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@serdaraksoy<\/a>&nbsp;Here\u2019s something worth thinking about. Quality matters more than volume when it comes to AI and job apps. What keeps me wondering is how Wobo makes each submission feel unique. Could be easy for profiles to start mirroring one another if the system isn\u2019t careful. Somehow they\u2019d need to keep things tailored without falling into repeating patterns. Personal touch goes a long way. Would hate seeing everyone sounding the same despite different backgrounds.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! The UI is super smooth and very intuitive. I had a quick question regarding geographic coverage\u2014is Wobo currently limited to the USA, Canada, and the UK?<\/p>\n<p>I\u2019ve been navigating the job market for about 3 months now, so I\u2019m eager to see how much this can optimize my search efficiency.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thanks so much, really glad you\u2019re enjoying the experience!<\/p>\n<\/p>\n<p>You can use Wobo from anywhere in the world. That said, coverage may vary depending on the size of our company pool in each country. For example, coverage is currently more limited in markets like China and Japan, while it\u2019s strongest across North America and Europe.<\/p>\n<\/p>\n<p>Feel free to sign up and try it for free. It only takes a few minutes to start seeing your first matches, so you can quickly get a sense of how well it fits your search.  <\/p>\n<\/p>\n<p> <a href=\"https:\/\/www.producthunt.com\/@priyansh99\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@priyansh99<\/a>&nbsp;<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey all \ud83d\udc4b Taha here, co-founder at Wobo. Serdar&#8217;s post already lays out the full picture, so rather than repeat him I&#8217;ll jump straight to the part I&#8217;m personally most excited about.<\/p>\n<\/p>\n<p>You saw the swipe, and it really is fun. But under the hood we also do Autopilot, and honestly I think that&#8217;s the most important thing we&#8217;ve built. Once your profile is set, you can fine tune everything (the roles, salary range, locations, company type, how aggressive you want it to be) and then just hand it over. Wobo applies in the background to real roles at top tier companies, in your voice through your Persona. No swiping, no forms.<\/p>\n<\/p>\n<p>And here&#8217;s the part I love most: making the job hunt fun is one thing, but not having to spend that time at all is the actually fun part. You set up your profile once, barely touch it after that, and Wobo keeps running while you get on with your life. It all lives on web and mobile too, so you can check in straight from your phone whenever you feel like it.<\/p>\n<\/p>\n<p>We&#8217;re always looking at what else we can add to make this even smoother, and we genuinely read every comment here and take your feedback to heart, so please keep it coming \ud83d\ude4f<\/p>\n<\/p>\n<p>Big thanks to <a href=\"https:\/\/www.producthunt.com\/@serdaraksoy\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"serdaraksoy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@serdaraksoy<\/a>  for building this with me, and to <a href=\"https:\/\/www.producthunt.com\/@rohanrecommends\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"rohanrecommends\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@rohanrecommends<\/a> for hunting us.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>the part that actually matters is applying on the company&#8217;s own site instead of just spamming linkedin easy apply. that&#8217;s what real recruiters pay attention to. curious how the Wobo Persona learns your voice over time&#8230; does it get noticeably better after 5-10 applications or is it pretty accurate from the start<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Exactly. After you sign up, you chat with Wobo in the Persona section. It asks you a few questions and starts learning your voice from the way you text and respond.<\/p>\n<\/p>\n<p>It\u2019s already pretty accurate from the start, but you can also give feedback on the answers it writes for you. Over time, it keeps learning from that feedback and starts sounding more and more like you.  <\/p>\n<p><a href=\"https:\/\/www.producthunt.com\/@tina_chhabra\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tina_chhabra<\/a>&nbsp;<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Job searching can be exhausting, so I love the idea of simplifying the process and helping people discover opportunities they might otherwise miss.<\/p>\n<p>The swipe-based experience feels fun and approachable, and having applications tailored to each role is a great touch.<\/p>\n<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thank you, really appreciate that! Job searching can be such a difficult and repetitive process, so we wanted to make it feel a little more fun and much less overwhelming.<\/p>\n<p>You can use the swipe experience on both web and mobile, making it easy to discover relevant opportunities wherever you are. From there, Wobo handles the repetitive work while keeping each application tailored to the role :).  <a href=\"https:\/\/www.producthunt.com\/@gabriella_anjani\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gabriella_anjani<\/a>&nbsp;<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Company-site applications are the interesting part here. When I swipe right, can I preview the tailored resume, cover letter, and long-form ATS answers before Wobo submits them, or is the review only at the job-card level?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Right now, the application questions and tailored documents are generated during the application process, so they can\u2019t be previewed before submission yet. We\u2019re actively working on this, though, and plan to introduce a version where you can review everything in advance.<\/p>\n<\/p>\n<p>For now, once the application is submitted, you can view every answer Wobo provided and every document it created directly from your dashboard. You can also leave feedback on them, which helps train your AI and makes future answers and documents more accurate and more aligned with your voice.  <a href=\"https:\/\/www.producthunt.com\/@edan_tusi\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@edan_tusi<\/a>&nbsp;<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Interesting approach. How are you handling candidate relevance when job descriptions are poorly structured?<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Really good question, this is actually one of the trickier parts for us. Since we pull from a lot of different providers, postings come in every shape you can imagine, some clean and well structured, plenty of them messy or barely filled in.<\/p>\n<\/p>\n<p>That is exactly why we never run on raw data. Every posting first goes through a normalization step where we try to pull out the signals that actually matter (role, requirements, seniority, location, comp, and so on). If a posting is too messy for us to extract anything meaningful from, we would rather filter it out than send you a low confidence match. Fewer clean matches beats a feed full of noise.<\/p>\n<\/p>\n<p>So messy descriptions never reach you as is, they either get cleaned into something reliable or they get dropped <a href=\"https:\/\/www.producthunt.com\/@jaydeepgio\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"jaydeepgio\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jaydeepgio<\/a> <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The company-site application part is what makes this feel more useful than a job board wrapper. If it can keep applications tailored and natural-sounding, it removes a lot of the worst job hunt friction.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Exactly, that\u2019s the goal. We want to remove the repetitive parts of job hunting without making applications feel generic or automated.<\/p>\n<\/p>\n<p>You can always review every answer Wobo provides and every document it generates, including your tailored resume and cover letter. You can also give feedback at any point, which helps train your AI and makes future applications sound even more like you. <a href=\"https:\/\/www.producthunt.com\/@farrukh_butt1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@farrukh_butt1<\/a>&nbsp;<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I&#8217;d go for a different swiping method tbh, the whole tinder swipe experience is giving people PTSD since 2020, especially for GenZ, otherwise the idea is awesome \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@davide_dp_consulting\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@davide_dp_consulting<\/a>&nbsp;Totally fair \ud83d\ude42 the swipe was just our way of making matches feel quick and low pressure, but you&#8217;re never stuck with it. Don&#8217;t like one? Just leave it. Autopilot takes over. Really happy you like the idea, and if you think of a smoother way to do it, I&#8217;d love your feedback.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@serdaraksoy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@serdaraksoy<\/a>&nbsp;Congrats!! How are situations handled where questions are asked beyond just typical resume and cover letter drops? &#8220;What excites you about this company?&#8221;, &#8220;Tell us about an accomplishment you are proud of&#8221;, etc. Over time I suspect more companies will begin adding in these bespoke questions to try and prevent people from mass auto-applying, so am curious how Wobo handles these &#8220;edge cases&#8221;!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@millwiller\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@millwiller<\/a>&nbsp;Thanks Will! Honestly these open ended ones are where Wobo does its best work, not where it trips up.<\/p>\n<\/p>\n<p>For something like &#8220;what excites you about this company&#8221; or &#8220;an accomplishment you&#8217;re proud of,&#8221; it doesn&#8217;t paste a template. Your profile, the info you&#8217;ve given, and your Wobo Persona (basically your own voice) come together to write the answer the way you&#8217;d actually put it yourself. And these questions being there to discourage mass auto-applying actually works in our favor, that&#8217;s exactly the part we&#8217;re built to handle well.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>One thing I&#8217;d love to understand: what happens when Wobo answers a custom application question incorrectly or misses important context? If the user only sees it after submission, that could be a pretty painful failure mode. A pre-submission preview of the full application would probably be the first feature I&#8217;d want.<\/p>\n<\/p>\n<p>Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jared_salois\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jared_salois<\/a>&nbsp;Thanks Jared! And fair point, a wrong answer or missed context is the failure mode we care about most.<\/p>\n<\/p>\n<p>For now it only builds from your profile and what you&#8217;ve told it, so it never makes things up, and it runs checks before submitting. You can see every answer in the application details too, and if something&#8217;s off you just tell it how that question should&#8217;ve been answered, so it gets it right next time. You&#8217;re right that catching it after the fact isn&#8217;t ideal though, and a full pre-submission preview is exactly what we&#8217;re building next.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How do you handle application flows and custom questions without it getting stuck or submitting something wrong?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thamibenjelloun\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thamibenjelloun<\/a>&nbsp;Yes, forms vary a lot, no way around that, but we have seen so many of them by now that the patterns are pretty predictable, so the flows themselves rarely catch us off guard. Our bigger focus is never putting out wrong or missing data, so everything runs through a lot of checks before anything is submitted. The rule underneath all of it is simple: your profile and the info you entered are the only source of truth, nothing gets made up beyond that.<\/p>\n<\/p>\n<p>And if a wrong answer ever does slip through on some form, that is exactly where our feedback loop kicks in, so the same question never gets answered that way again. We cannot know every possible question upfront, but for the unexpected ones it gives the most sensible answer it can, and over time it turns into a tool you train to match you more and more.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Does it customize the resume and cover letters? Or does it just use the resume that is uploaded<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sasha_mcclendon\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sasha_mcclendon<\/a>&nbsp;Yes, it tailors both by default. Nothing gets reused as is. The resume you upload is just the starting point, and for every job you apply to, Wobo writes a fresh resume and cover letter built around that specific posting, pulling the most relevant parts of your background.<\/p>\n<\/p>\n<p>That said, if you&#8217;d rather use your own resume and cover letter, there&#8217;s a setting for that too. You can switch over anytime, so the choice stays yours.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congratulations on the launch! I&#8217;m curious to know what criteria other than skill are used as the basis. Is there a value match or something more individual?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>In Autopilot mode, we use a three layer AI analysis to compare each role with your profile. This goes beyond skills and preferences, and also looks at factors such as company culture fit and other role specific details. The goal is to filter opportunities, identify the strongest matches, and apply automatically on your behalf.<\/p>\n<\/p>\n<p>Swipe to Apply is intentionally simpler. Since you are quickly reviewing and choosing the roles yourself, the matching there is mainly based on your skills and preferences.   <a href=\"https:\/\/www.producthunt.com\/@galyna_arikh\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@galyna_arikh<\/a>&nbsp;<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@taha_keles\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"taha_keles\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@taha_keles<\/a> Hey guys, nice solution.<br \/>by the way, do you have a promo code for the purchase of <strong>Wobo Autopilot ?<\/strong><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@taha_keles\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@taha_keles<\/a>&nbsp;<a href=\"https:\/\/www.producthunt.com\/@serdaraksoy\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"serdaraksoy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@serdaraksoy<\/a>  Can you guys, share it with us ? thanks<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vincent_youmssi\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vincent_youmssi<\/a>&nbsp;Thanks Vincent, really glad you like it. And yes, we&#8217;ve got you covered, just drop in PH15 at checkout for 15% off Wobo Autopilot. Enjoy, and let us know how it goes once you&#8217;re up and running.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Interesting take on job search automation. The part I\u2019d want to trust most is \u201cin your voice\u201d for application questions. Do users get a review step per application, or can they set rules for when Wobo applies autonomously?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Totally get wanting control over this one, especially on the answers themselves. Two parts to it.<\/p>\n<\/p>\n<p>Which jobs get applied to is fully yours. Full autopilot where you never look at it, a filtered setup where only certain matches go through, or fully manual where you approve each one.<\/p>\n<\/p>\n<p>For the answers, along with your tailored cover letter and resume: right now you can see everything Wobo wrote the moment it is submitted, straight from your dashboard, and leave feedback on any of it, which is exactly what trains your Persona to sound more like you over time. Previewing them before they go out is something we are actively building, so it is on the way.<\/p>\n<\/p>\n<p>@sarveshsea<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch. Applying on the company\u2019s actual site instead of spamming Easy Apply is the part that makes this more interesting.<\/p>\n<p>The main trust question for me is review control: for high-stakes fields like work authorization, salary expectations, relocation, or \u201cwhy this company,\u201d can candidates mark certain answers as \u201calways ask me before submitting\u201d? That would keep the swipe flow fast while avoiding the few mistakes that can really hurt an application.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey, looks like you are using fake reviews front and center on your app which is definitely illegal or breaking some TOS of Product Hunt. You didn&#8217;t even do a good job faking the reviews. Any LLM can immediately identify a 90% fake rate. Not to mention this review seems like a real one. Want to clear that up for us? <\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/c27a6b7f-e565-47fa-b091-87d76dcc9252.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How does Wobo handle the wildly different form structures across thousands of career pages?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@crystalmei\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@crystalmei<\/a>&nbsp;Yeah, the variety is real. The thing that makes it manageable is that most career pages run on a handful of underlying ATS providers, so we build against those rather than each page one by one. We definitely can&#8217;t cover every job out there yet, but we&#8217;re adding more providers as we go, so coverage keeps growing day by day<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love the &#8220;swipe right and wake up to interviews&#8221; concept \u2014 the fact that it applies on the company&#8217;s actual career site instead of just LinkedIn Easy Apply is the real differentiator. The Persona feature sounds like the key to keeping applications from feeling generic. Congrats to you and Taha on the launch! One question: when Wobo applies to many roles for the same person, how do you avoid a candidate looking spammy to companies that share applicant tracking systems \u2014 is there any pacing or per-company limit built in?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@doganakbulut\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@doganakbulut<\/a>&nbsp;Thanks, really appreciate that. And yeah, that&#8217;s the part we care about most too, applying on the real career site and keeping each one personal instead of generic.<\/p>\n<\/p>\n<p>There&#8217;s a per company limit built in for exactly this. At each company we go for the single best fit role instead of blasting every opening, so you never come across as spamming one place or a shared ATS. The only time more than one shows up is when someone&#8217;s after something pretty niche and there just aren&#8217;t many other matches around, so a couple of roles at the same company can make sense, and even then it stays measured.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>interesting approach to the application side. curious how you think about the other half of this \u2014 as AI makes applying easier, the signal-to-noise ratio for employers gets worse. every applicant starts to look polished. the bottleneck shifts from &#8220;can this person write a good cover letter&#8221; to &#8220;can we actually tell who&#8217;s good at the job.&#8221; feels like there&#8217;s a matching problem that outlasts the application problem.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#3<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/6UFCMNIYCIPIVY\" class=\"app-title\">Kickbacks.ai<\/a><\/p>\n<div class=\"one-liner\">Get paid to wait for Claude Code to finish<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">253<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Kickbacks.ai\u5728\u5f00\u53d1\u8005\u7b49\u5f85AI\u4ee3\u7406\uff08\u5982Claude Code\uff09\u6267\u884c\u4efb\u52a1\u7684\u201c\u6b7b\u65f6\u95f4\u201d\u5185\uff0c\u5728\u7ec8\u7aef\u72b6\u6001\u680f\u63d2\u5165\u8d5e\u52a9\u5546\u5e7f\u544a\uff0c\u5e76\u5c0650%\u7684\u5e7f\u544a\u6536\u5165\u5206\u7ed9\u7528\u6237\uff0c\u628a\u65e0\u804a\u7684\u7b49\u5f85\u8fc7\u7a0b\u76f4\u63a5\u53d8\u73b0\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/db1b8c42-d729-415c-ae0b-7f0347f9e31d.gif?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/42cffd2c-9972-41bf-8dcd-fa6cfc997017.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/fb664477-7f7f-411c-8949-09636c5fb294.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/05b0fe25-4e31-4935-bb31-ff9eab5fc6e7.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/647282f0-8c72-4674-bd96-8c4e4727b37a.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b2dcf302-b623-4aa2-ba79-7033eedf007b.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/82c0024b-cef4-46e7-a123-d568c60ca519.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Advertising<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">Development<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u4ee3\u7406\u7b49\u5f85\u65f6\u95f4\u53d8\u73b0<\/span><br \/>\n            <span class=\"tag\">\u5f00\u53d1\u8005\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u7ec8\u7aef\u5e7f\u544a<\/span><br \/>\n            <span class=\"tag\">\u6536\u5165\u5206\u6210<\/span><br \/>\n            <span class=\"tag\">\u72b6\u6001\u680f\u63d2\u4ef6<\/span><br \/>\n            <span class=\"tag\">Claude Code<\/span><br \/>\n            <span class=\"tag\">\u9690\u79c1\u4e89\u8bae<\/span><br \/>\n            <span class=\"tag\">\u8585\u7f8a\u6bdb<\/span><br \/>\n            <span class=\"tag\">VSCode\u6269\u5c55<\/span><br \/>\n            <span class=\"tag\">\u7a0b\u5e8f\u5316\u5e7f\u544a<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u591a\u6570\u7528\u6237\u80af\u5b9a\u201c\u7b49\u5f85\u53d8\u6536\u76ca\u201d\u7684\u521b\u610f\uff0c\u4f46\u6838\u5fc3\u8d28\u7591\u96c6\u4e2d\u5728\u9690\u79c1\u548c\u6536\u76ca\u771f\u5b9e\u6027\u4e0a\u3002\u7528\u6237\u62c5\u5fe7\u63d2\u4ef6\u4f1a\u5411\u670d\u52a1\u5668\u53d1\u9001\u5de5\u4f5c\u76ee\u5f55\u3001\u4ed3\u5e93\u540d\u7b49\u654f\u611f\u6570\u636e\uff08NDA\u73af\u5883\u81f4\u547d\u4f24\uff09\u3002\u540c\u65f6\uff0c\u6709\u7528\u6237\u5b9e\u6d4b\u6536\u76ca\u4e25\u91cd\u7f29\u6c34\uff08\u9996\u65e55.4\u7f8e\u5143\/514\u4e8b\u4ef6\uff0c\u6b21\u65e50.43\u7f8e\u5143\/1587\u4e8b\u4ef6\uff09\uff0c\u6000\u7591\u5e73\u53f0\u901a\u8fc7\u7b97\u6cd5\u63a7\u5236\u6536\u76ca\u4ee5\u963b\u788d\u63d0\u73b0\uff0c\u4e14\u8981\u6c42\u9891\u7e41\u91cd\u65b0\u767b\u5f55\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Kickbacks.ai\u8e29\u4e2d\u4e86AI\u8f85\u52a9\u7f16\u7a0b\u65f6\u4ee3\u6700\u771f\u5b9e\u7684\u75db\u70b9\u4e4b\u4e00\u2014\u2014\u4eba\u7c7b\u7684\u7b49\u5f85\u7126\u8651\u3002\u5b83\u5c06\u5f00\u53d1\u8005\u6ce8\u89c6\u5c4f\u5e55\u4e0a\u8df3\u52a8\u7684\u5149\u6807\u3001\u65e0\u4e8b\u53ef\u505a\u7684\u201c\u5783\u573e\u65f6\u95f4\u201d\u76f4\u63a5\u8d27\u5e01\u5316\uff0c\u8fd9\u79cd\u5c06\u7528\u6237\u6ce8\u610f\u529b\u76f4\u63a5\u6253\u5305\u5356\u7ed9\u5e7f\u544a\u5546\u7684\u5546\u4e1a\u6a21\u5f0f\uff0c\u903b\u8f91\u4e0a\u81ea\u6d3d\u4e14\u5145\u6ee1\u4e92\u8054\u7f51\u539f\u751f\u7684\u75de\u6c14\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u8fd9\u6b3e\u4ea7\u54c1\u7684\u201c\u4ed8\u8d39\u5899\u201d\u5efa\u5728\u4e86\u7528\u6237\u7684\u4fe1\u4efb\u8fb9\u754c\u4e0a\u3002\u4f5c\u4e3a\u4e00\u6b3e\u4fb5\u5165\u7f16\u8f91\u5668\u72b6\u6001\u680f\u7684\u63d2\u4ef6\uff0c\u7528\u6237\u53cd\u9988\u4e2d\u538b\u5012\u6027\u7684\u7591\u8651\u5e76\u975e\u5176\u5546\u4e1a\u6a21\u5f0f\u4e0d\u6210\u7acb\uff0c\u800c\u662f\u5176\u6570\u636e\u6536\u96c6\u7684\u9ed1\u7bb1\u3002\u5728\u5f00\u53d1\u8005\u666e\u904d\u5bf9\u9690\u79c1\u6781\u5ea6\u654f\u611f\u7684\u751f\u6001\u4e2d\uff0cKickbacks.ai\u5e76\u672a\u7ed9\u51fa\u4ee4\u4eba\u4fe1\u670d\u7684\u6570\u636e\u9694\u79bb\u627f\u8bfa\u3002\u6240\u8c13\u7684\u201canonymous impression ping\u201d\u662f\u5426\u771f\u7684\u53ea\u53d1\u9001\u533f\u540d\u5143\u6570\u636e\uff1f\u9879\u76ee\u8def\u5f84\u3001\u5de5\u4f5c\u76ee\u5f55\u751a\u81f3\u6a21\u578b\u4f1a\u8bdd\u4e0a\u4e0b\u6587\u662f\u5426\u4f1a\u88ab\u5916\u6cc4\uff1f\u5bf9\u4e8e\u5904\u7406\u5546\u4e1a\u4ee3\u7801\u6216\u5408\u89c4\u8981\u6c42\u4e25\u683c\u7684\u56e2\u961f\uff0c\u8fd9\u4e0d\u4ec5\u662f\u9690\u79c1\u95ee\u9898\uff0c\u800c\u662f\u6839\u672c\u6027\u7684\u4fe1\u4efb\u5d29\u584c\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u66f4\u81f4\u547d\u7684\u662f\uff0c\u7528\u6237\u5b9e\u6d4b\u4e2d\u201c\u6536\u76ca\u65ad\u5d16\u5f0f\u4e0b\u8dcc\u201d\u7684\u73b0\u8c61\u3002\u9996\u65e5\u72c2\u8d5a5.4\u7f8e\u5143\uff0c\u6b21\u65e5\u7f29\u6c34\u81f30.43\u7f8e\u5143\uff0c\u8fd9\u79cd\u6536\u76ca\u8870\u51cf\u66f2\u7ebf\u5b8c\u7f8e\u8e29\u4e2d\u4e86\u201c\u8585\u7f8a\u6bdb\u201d\u7c7b\u4ea7\u54c1\u7684\u7ecf\u5178\u9677\u9631\u2014\u2014\u5148\u4ee5\u9ad8\u6536\u76ca\u83b7\u53d6\u7528\u6237\u5fe0\u8bda\u5ea6\uff0c\u968f\u540e\u5927\u5e45\u538b\u4f4e\u6bcf\u6b21\u5c55\u793a\u7684\u8d27\u5e01\u5316\u6548\u7387\u3002\u65e0\u8bba\u8fd9\u662f\u5e7f\u544a\u4e3b\u51fa\u4ef7\u53d8\u4f4e\u8fd8\u662f\u5e73\u53f0\u4e3b\u52a8\u9650\u6d41\uff0c\u7ed3\u679c\u90fd\u6307\u5411\u4e00\u4e2a\u6838\u5fc3\u77db\u76fe\uff1a\u5f00\u53d1\u8005\u80fd\u5426\u5728\u4ed8\u51fa\u201c\u6ce8\u610f\u529b\u201d\u548c\u201c\u9690\u79c1\u98ce\u9669\u201d\u540e\uff0c\u771f\u6b63\u7a33\u5b9a\u5730\u5151\u6362\u523010\u7f8e\u5143\u63d0\u73b0\u95e8\u69db\u3002\u4ece\u73b0\u6709\u8bc4\u8bba\u770b\uff0c\u5c1a\u65e0\u6210\u529f\u63d0\u73b0\u6848\u4f8b\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4ece\u4ea7\u54c1\u5f62\u6001\u770b\uff0c\u7ec8\u7aef\u5e7f\u544a\u5e76\u975e\u65b0\u9c9c\u4e8b\uff0c\u5fae\u8f6f\u5df2\u5728Start Menu\u5c1d\u8bd5\u3002\u4f46\u8fd9\u4e2a\u54c1\u7c7b\u6c38\u8fdc\u9762\u4e34\u201c\u5e7f\u544a\u5546\u6295\u5165\u4ea7\u51fa\u6bd4\u201d\u548c\u201c\u7528\u6237\u6ce8\u610f\u529b\u5360\u7528\u5ea6\u201d\u7684\u4e24\u96be\u5e73\u8861\u3002\u5982\u679c\u8d5e\u52a9\u5546\u770b\u5230\u7684\u53ea\u662f\u6df1\u8272\u80cc\u666f\u4e0a\u4e00\u884c\u6587\u5b57\uff0cCTR\u5fc5\u7136\u60e8\u6de1\uff1b\u82e5\u63d2\u4ef6\u8bd5\u56fe\u57fa\u4e8e\u5de5\u4f5c\u5185\u5bb9\u505a\u66f4\u7cbe\u51c6\u7684\u4e2a\u6027\u5316\u63a8\u8350\uff08\u5982\u7528\u6237\u8bc4\u8bba\u6240\u62c5\u5fc3\u7684\uff09\uff0c\u5219\u5fc5\u7136\u89e6\u78b0\u9690\u79c1\u7ea2\u7ebf\u3002Kickbacks.ai\u6b63\u5904\u4e8e\u8fd9\u4e2a\u5fae\u5999\u7684\u5e73\u8861\u70b9\u4e0a\uff1a\u5b83\u65e2\u60f3\u6210\u4e3a\u5f00\u53d1\u8005\u88ab\u52a8\u7684\u201c\u8d5a\u94b1\u673a\u5668\u201d\uff0c\u53c8\u8981\u5bf9\u6297\u7528\u6237\u5bf9\u5e7f\u544a\u65e0\u5904\u4e0d\u5728\u7684\u654c\u610f\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u8fd9\u662f\u4e00\u4e2a\u521b\u610f\u5341\u8db3\u4f46\u98ce\u9669\u6781\u9ad8\u7684\u5546\u4e1a\u5b9e\u9a8c\u3002\u5b83\u8bc1\u660e\u4e86\u201c\u7b49\u5f85\u201d\u672c\u8eab\u5177\u6709\u6ce8\u610f\u529b\u4ef7\u503c\uff0c\u4f46\u4e5f\u7528\u5b9e\u529b\u8bc1\u660e\u4e86\uff1a\u5728\u5f00\u53d1\u8005\u793e\u533a\uff0c\u7528\u4ea4\u6613\u6362\u4fe1\u4efb\u8fd9\u6761\u8def\u8fdc\u6bd4\u53d8\u73b0\u7b49\u5f85\u65f6\u95f4\u672c\u8eab\u8981\u96be\u5f97\u591a\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Kickbacks.ai<\/span>\n                <\/div>\n<div class=\"comment-content\">Kickbacks.ai helps developers get paid for AI-agent wait states. Advertisers bid for a tiny sponsored status line; users get 50% of ad revenue.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Honestly love the cheekiness of this, &#8220;get paid to wait&#8221; is a great hook \ud83d\ude42<\/p>\n<\/p>\n<p>One thing I&#8217;m curious about on the technical side: since the integration lives in the status line, it gets the JSON payload Claude Code passes on every refresh (model, current working dir, session info&#8230;). To serve and attribute ads you presumably phone home pretty often.<\/p>\n<\/p>\n<p>So my real question is around privacy: what exactly does the status line script send to your servers? Do project paths \/ workspace dirs ever leave the machine, or is it stripped down to an anonymous impression ping? For folks working under NDA or on sensitive code, that&#8217;s the make or break detail.<\/p>\n<\/p>\n<p>Not a gotcha, genuinely rooting for the idea, just think being upfront about the data flow would build a lot of trust here. Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>6<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I&#8217;ve had this running for a few days and it seems that after the first day the earnings are severely nerfed? The first day I ran this for a couple of hours which made 5.40 USD for 514 events, which was pretty promising. A few days later I&#8217;ve ran this for a whole day, and I earned 0.43 USD over 1587 events, which seems like the app is just going to make it harder for me to earn the closer I get to the 10 USD cash out threshold. I don&#8217;t know if the extension has worked for anyone since I haven&#8217;t seen anyone cash out yet, and even though its &#8220;free money&#8221; the extension requires constant baby sitting, asking me to reload the window or sign in again and again. Are you guys having an incident or something or do the earnings just tank after the first day?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This seems like a troll idea, but SUPRISIGLY good.<\/p>\n<\/p>\n<p>I think the next piece of validation is &#8220;what does a dev do when they&#8217;re waiting for Claude&#8221;. <\/p>\n<p>Because a lot of people I know (eg. me) just start doomscrolling or clicking around testing bugs on their product or whatever they&#8217;re building.<\/p>\n<\/p>\n<p>Good luck Gabe, congrats!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Great idea, but it currently only supports Stripe payouts, which are not available in some countries. I\u2019m also experiencing some issues with logging in.<\/p>\n<\/p>\n<p>I wish it supported PayPal or direct bank payouts as well, and that the login issues were fixed.<\/p>\n<\/p>\n<p>By the way, the idea is really good, and I genuinely like the product.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>It made me think.. why isnt it a thing like in all software products?? For instance we can put Ads in the free space of every OS toolbar <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Probably because the backlash would be massive, but it&#8217;s an interesting idea! Microsoft is actually already doing it in the Start menu, aren&#8217;t they? macOS and Linux aren&#8217;t doing it, though.&#8221;<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is a funny but surprisingly logical idea. Developers already spend a lot of time watching agents think, so turning that dead time into something opt-in and revenue-sharing makes sense.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@farrukh_butt1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@farrukh_butt1<\/a>&nbsp;really logically good idea<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The hook is clever: agent wait time is basically the new compile time.<\/p>\n<p>The trust boundary is the product, though. For developers under NDA, the key question is what leaves the machine when the status line refreshes. Is the ad request limited to anonymous impression metadata, or can things like workspace path, repo name, model, current directory, or session context ever be sent upstream?<\/p>\n<p>A public \u201cexact payload we collect\u201d page would probably help adoption more than any growth copy here.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>&#8220;Get paid to wait&#8221; is such a fun hook \u2014 turning agent dead time into revenue is genuinely clever. Congrats on the launch! How do you keep the sponsored status line feeling useful rather than just another ad?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The dead time angle is smart \u2014 waiting for Claude to compile is basically the new coffee break. My only concern is the same as others raised here: what data exactly gets sent to your servers during those sessions? A clear answer to that in the docs would probably convert a lot of fence-sitters. Rooting for you either way, clever niche.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Just curious what \u2018personal\u2019 data are they gonna collect to make the ads \u2018personalised\u2019<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The wait state being monetizable is a clever reframe. You&#8217;re paying for that idle time regardless, so turning it into a revenue split actually fits how agent workflows already feel. Curious how you keep the sponsored line from getting visually noisy when someone&#8217;s mid-task.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is a fantastic idea. I ran CodeFund (previously Code Sponsor) a handful of years back in an effort to fund OSS. Advertisers would pay top dollar knowing that they were getting their products in front of their exact target market.<\/p>\n<p>Running an advertising company is difficult, especially when it comes to these types of audiences. As much as I hope this project succeeds, it&#8217;s going to be a huge challenge if you plan on the developer retaining privacy.<\/p>\n<p>For reference, see <a href=\"https:\/\/ethicalads.io\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">ethicalads.io<\/a> and how they manage to balance privacy with advertising data.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Great idea, but it seems I have to auth the vscode extension via Google even if I have registered with some other email address. So I am not able to use it except with email addresses that are not tied to any Google account?<\/p>\n<p>Oh, also my Claude Code CLI is running on an external host (dedicated Debian machine), I am connected via SSH from my vscode at home. I get a lot of timeout and other messages.<\/p>\n<\/p>\n<p>After 3 times reloading the window and signing in Kickback is now &#8220;green&#8221;!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@michaelpehl\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@michaelpehl<\/a>&nbsp;seems that they need to do a bit more &#8220;trial and error&#8221; coz i cant figure this stuff either<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Clever and slightly surreal market: monetizing agent wait states. I like the 50\/50 revenue share. How are you thinking about keeping sponsored status lines useful to developers rather than just another ad surface?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<blockquote>\n<p>This is a hilariously brilliant idea. Watching Claude Code spin or waiting for massive agent loops to finish is the new &#8220;waiting for code to compile&#8221;. Flipping that dead time into an ad-supported revenue stream is incredibly clever.<\/p>\n<\/p>\n<p>Out of curiosity, how does the integration work under the hood? Is it injected as a custom terminal reporter or an environment wrapper? Looking forward to trying this out!<\/p>\n<\/p>\n<\/blockquote>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#4<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/FKEBR24CKXQXUO\" class=\"app-title\">AutoEdit<\/a><\/p>\n<div class=\"one-liner\">Your Claude AI Video Editor for Premiere Pro<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">249<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>AutoEdit\u662f\u4e00\u6b3e\u5185\u7f6e\u4e8eAdobe Premiere Pro\u7684AI\u63d2\u4ef6\uff0c\u5229\u7528Claude AI\u7406\u89e3\u89c6\u9891\u5185\u5bb9\uff0c\u81ea\u52a8\u5254\u9664\u6c89\u9ed8\u3001\u586b\u5145\u8bcd\u3001NG\u7247\u6bb5\u548c\u91cd\u590d\u90e8\u5206\uff0c\u4e3a\u5185\u5bb9\u521b\u4f5c\u8005\u751f\u6210\u7cbe\u70bc\u7c97\u526a\uff0c\u5c06\u89c6\u9891\u7f16\u8f91\u6548\u7387\u63d0\u534710\u500d\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/96723b67-df7e-48b3-990b-2c1d12fe6fa6.webp?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/9de64f5c-84c7-4f4c-b364-e8251e379ef1.webp?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/33d36612-e3d0-4db3-8fc6-5ff9747de366.webp?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e300a95e-1c00-49b6-af02-bb7b2c3f7070.webp?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/0104ccea-e64d-4dab-b583-ac31bacd60f0.webp?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/9f6c6a7f-9586-4e63-a9d6-e288206790de.webp?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/e546a5bd-585e-46ef-afbc-480164b1e9bb.jpeg?auto=format\" data-video-url=\"https:\/\/www.youtube.com\/watch?v=kvK8y3rI028&#038;t=10s\"><source src=\"https:\/\/www.youtube.com\/watch?v=kvK8y3rI028&#038;t=10s\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Marketing<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">Photo &#038; Video<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u89c6\u9891\u7f16\u8f91<\/span><br \/>\n            <span class=\"tag\">AI\u63d2\u4ef6<\/span><br \/>\n            <span class=\"tag\">Premiere Pro<\/span><br \/>\n            <span class=\"tag\">\u7c97\u526a\u81ea\u52a8\u5316<\/span><br \/>\n            <span class=\"tag\">\u5185\u5bb9\u521b\u4f5c<\/span><br \/>\n            <span class=\"tag\">\u667a\u80fd\u526a\u8f91<\/span><br \/>\n            <span class=\"tag\">\u8bed\u97f3\u5904\u7406<\/span><br \/>\n            <span class=\"tag\">\u64ad\u5ba2\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u5de5\u4f5c\u6d41\u4f18\u5316<\/span><br \/>\n            <span class=\"tag\">Claude AI<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u5176\u5728Premiere\u5185\u8fd0\u884c\u7684\u4fbf\u6377\u6027\uff0c\u5c24\u5176\u8d5e\u8d4f\u89e3\u51b3\u201c\u7c97\u526a\u6e05\u7406\u201d\u75db\u70b9\u3002\u6838\u5fc3\u95ee\u9898\u805a\u7126\u4e8e\uff1a\u5982\u4f55\u533a\u5206\u6709\u610f\u505c\u987f\u4e0e\u6b7b\u5bc2\uff08AI\u57fa\u4e8e\u4e0a\u4e0b\u6587\u5224\u65ad\uff09\uff0c\u5982\u4f55\u5904\u7406\u540e\u8df3\u526a\u5207\uff08\u63d0\u4f9b\u6beb\u79d2\u7ea7\u6ed1\u5757\u8c03\u6574\uff09\uff0c\u4ee5\u53ca\u662f\u5426\u652f\u6301DaVinci Resolve\u548cCapCut\uff08\u76ee\u524d\u4ec5\u9650Premiere\uff0cDavinci\u7248\u672c\u5728\u8ba1\u5212\u4e2d\uff09\u3002\u63d0\u4f9b3\u5929\u514d\u8d39\u8bd5\u7528\uff0c\u672a\u6765\u6709\u6c38\u4e45\u514d\u8d39\u7248\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                AutoEdit\u7684\u806a\u660e\u4e4b\u5904\u5728\u4e8e\u5b83\u7684\u201c\u8c26\u5351\u201d\u2014\u2014\u5b83\u6ca1\u6709\u6253\u7740\u201c\u66ff\u4ee3\u526a\u8f91\u5e08\u201d\u7684\u53e3\u53f7\u53bb\u641e\u5168\u81ea\u52a8\u751f\u6210\uff0c\u800c\u662f\u8001\u8001\u5b9e\u5b9e\u5730\u624e\u6839\u5728Premiere Pro\u8fd9\u4e2a\u4e13\u4e1a\u8f6f\u4ef6\u5185\u90e8\uff0c\u53ea\u505a\u201c\u5254\u9664\u5783\u573e\u201d\u8fd9\u4e00\u4ef6\u4e8b\u3002\u8fd9\u4e2a\u5b9a\u4f4d\u975e\u5e38\u7cbe\u51c6\uff0c\u56e0\u4e3a\u5bf9\u4e8e\u6bcf\u5929\u9762\u5bf9\u51e0\u5341\u5c0f\u65f6\u7d20\u6750\u7684\u535a\u4e3b\u548c\u64ad\u5ba2\u4e3b\u6765\u8bf4\uff0c\u4ece\u7d20\u6750\u6d41\u91cc\u635e\u51fa\u9ec4\u91d1\u3001\u526a\u6389\u5e9f\u8bdd\u548cNG\uff0c\u662f\u8017\u65f6\u6700\u957f\u3001\u6700\u65e0\u8111\u3001\u4e5f\u6700\u75db\u82e6\u7684\u5de5\u4f5c\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u771f\u6b63\u7684\u4ef7\u503c\u5728\u4e8e\u5176\u201c\u539f\u751f\u96c6\u6210\u201d\u4e0e\u201c\u8bed\u4e49\u7406\u89e3\u201d\u7684\u7ed3\u5408\u3002\u7528\u6237\u8bc4\u8bba\u4e2d\u53cd\u590d\u51fa\u73b0\u7684\u75db\u70b9\u2014\u2014\u201c\u4e0d\u60f3\u4e0a\u4f20\u5230\u5916\u90e8\u5e73\u53f0\u201d\u3001\u201c\u62c5\u5fc3\u526a\u6389\u6709\u610f\u7684\u620f\u5267\u6027\u505c\u987f\u201d\u2014\u2014\u90fd\u88ab\u5176\u76f4\u63a5\u5728\u65f6\u95f4\u7ebf\u4e0a\u8fd0\u884c\u3001\u5e76\u5229\u7528Claude\u7406\u89e3\u4e0a\u4e0b\u6587\u7684\u80fd\u529b\u6240\u89e3\u51b3\u3002\u8fd9\u4e0d\u662f\u4e00\u4e2a\u7b80\u5355\u7684\u201c\u9759\u97f3\u68c0\u6d4b\u5668\u201d+\u201c\u8df3\u5207\u62fc\u63a5\u5668\u201d\uff0c\u800c\u662f\u4e00\u4e2a\u8bd5\u56fe\u7406\u89e3\u201c\u8fd9\u53e5\u8bdd\u662f\u4e0d\u662f\u5e9f\u8bdd\u201d\u7684\u667a\u80fd\u52a9\u624b\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u5f53\u7136\uff0c\u98ce\u9669\u4e5f\u5f88\u660e\u663e\u3002\u5bf9\u4e91\u7aef\u7684\u4f9d\u8d56\u610f\u5473\u7740\u5904\u7406\u901f\u5ea6\u548c\u7f51\u7edc\u8d28\u91cf\u6df1\u5ea6\u7ed1\u5b9a\uff0c\u5bf9\u4e8e4K\u957f\u89c6\u9891\uff0c1-2\u5206\u949f\u7684\u5904\u7406\u65f6\u95f4\u5728AI\u5de5\u5177\u4e2d\u4e0d\u7b97\u5feb\uff0c\u5ba2\u6237\u63d0\u53ca\u7684\u201c\u5febWiFi\u201d\u524d\u63d0\u5e76\u975e\u4eba\u4eba\u90fd\u80fd\u8fbe\u5230\u3002\u6b64\u5916\uff0c\u4e00\u65e6Claude\u5bf9\u201c\u505c\u987f\u662f\u5426\u6709\u6548\u201d\u7684\u5224\u65ad\u51fa\u9519\uff0c\u4fee\u590d\u6210\u672c\u53ef\u80fd\u6bd4\u624b\u52a8\u526a\u66f4\u9ad8\u3002\u76ee\u524d\u5b83\u53ea\u89e3\u51b3\u4e86\u4e00\u4e2a\u975e\u5e38\u5782\u76f4\u7684\u201c\u7c97\u526a\u6e05\u7406\u201d\u95ee\u9898\uff0c\u4f46\u5bf9\u4e8e\u9ad8\u9891\u5236\u4f5c\u7684\u5185\u5bb9\u521b\u4f5c\u8005\u800c\u8a00\uff0c\u8fd9\u6070\u597d\u662fROI\u6700\u9ad8\u7684\u90a3\u4e2a\u73af\u8282\u3002\u5982\u679c\u5b83\u80fd\u6301\u7eed\u4f18\u5316\u5224\u65ad\u7cbe\u5ea6\u5e76\u62d3\u5c55\u5230DaVinci\uff0c\u5b8c\u5168\u6709\u673a\u4f1a\u6210\u4e3a\u89c6\u9891AI\u65f6\u4ee3\u7684\u201c\u745e\u58eb\u519b\u5200\u201d\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">AutoEdit<\/span>\n                <\/div>\n<div class=\"comment-content\">AutoEdit helps content creators edit their videos 10x faster by turning raw footage into a clean rough cut in minutes. It works directly inside Adobe Premiere Pro as an AI Plugin. Claude AI understands content, automatically removing silences, filler words, bad takes, restarts, and repeated sections while generating captions and structuring timelines. Editors stay in control of creative decisions while AutoEdit handles the repetitive, boring work.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Happy to hunt AutoEdit today! \ud83d\ude4c<\/p>\n<\/p>\n<p>Video editing is one of those tasks that still consumes countless hours, especially for creators, podcasters, agencies, and content teams working with long-form footage. What caught my attention about AutoEdit is that it doesn&#8217;t try to replace editors, it removes the repetitive work that slows them down.<\/p>\n<\/p>\n<p>Built directly inside Adobe Premiere Pro, AutoEdit uses AI to understand the content of your footage and automatically remove silences, filler words, bad takes, restarts, and repeated sections while helping structure a cleaner rough cut. The result is less time spent on timeline cleanup and more time focused on storytelling.<\/p>\n<\/p>\n<p>If you&#8217;re creating videos regularly, I&#8217;d love to hear your thoughts on how AI can improve the editing workflow. The makers are here all day to answer questions and gather feedback from the community.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>9<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@istiakahmad\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@istiakahmad<\/a><\/p>\n<p>Hey guys we also just posted a new tutorial demo on the plugin on our youtube channel right now! \ud83c\udf89 check it out,it goes over all the new features!<\/p>\n<\/p>\n<p><a href=\"https:\/\/youtu.be\/7GVctIP2Kpw?si=wiu_jtfbheeDct2X\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/youtu.be\/7GVctIP2Kpw?si=wiu_jtfbheeDct2X<\/a><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/447319e1-f9f0-4e35-91ac-aed4bf66e8dc.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@istiakahmad\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@istiakahmad<\/a>&nbsp;congrats on the launch Istiak, making this a plugin is a good move<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">The rough cut problem is so real. Every video creator I know spends 40% of edit time just doing cleanup before actual creative decisions start. Building this inside Premiere Pro rather than a separate tool is the right call, keeps the workflow where editors already live. One thing i&#8217;d want to know is how it handles jump cuts after silence removal, does it do any smoothing or is that still manual?<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@kishan007\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@kishan007<\/a>&nbsp;hi Kishan, great point. I totally agree on keeping the workflow in Premiere.<\/p>\n<p>About your question for the jumpcuts, it basically cuts out all the silences, and theres even a slider option that lets you adjust how many milliseconds of the edit you want cut so you can make your edits even tighter. Theres also a final pass check page that lets you check if claude made any mistakes. I added a screenshot below of what that page looks like. \ud83d\ude42<\/p>\n<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a45d66cd-9bd2-40e7-bfdf-48c59ec61c97.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! Most of these editors cut silently and you only catch the bad take after export. How does Claude tell a deliberate dramatic pause from dead air?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@artstavenka1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@artstavenka1<\/a>&nbsp;Hey Art, thanks for the comment! basically it uses a series of predefined rules and prompts that we wrote ourselves, based off the trial and error results of 100+ hours of RAW talking head video content. Claude focuses on understanding the topic then it makes the cuts after. I added an image of what it looks like below:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/7a6084bd-1f32-4172-a14f-573f08575da2.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>does this work with DaVinci Resolve too? looks sick but i mostly edit in resolve and capcut<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@raihanshezan\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@raihanshezan<\/a>&nbsp;Hi Raihan, unfortunately, the plugin only works for Premiere Pro, but a davinci plugin is definitely something in the works that we&#8217;re planning on releasing sooner or later. <\/p>\n<\/p>\n<p>In the menatime, the plugin is only compatible for Premiere Pro, \ud83d\ude4c\ud83c\udffd<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Building this as a Premiere-native plugin is the right call \u2014 keeping editors in the tool they already live in. Cutting the boring cleanup while leaving creative decisions to humans is a smart line to walk. Congrats on the launch! Curious how it handles deliberate dramatic pauses vs. actual dead air?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@doganakbulut\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@doganakbulut<\/a>&nbsp;Thanks, really appreciate that! Honestly the pause question is the whole reason this exists. The first pass is mechanical and it flags every silence, but it doesn&#8217;t get to make the cut on its own. A set of Claude skills then read what&#8217;s happening around each pause and decide whether it&#8217;s carrying intent or just dead air. A beat before a reveal, a breath for emphasis, or the setup before a punchline all stay in. Fumbling, an &#8220;um,&#8221; or someone losing their train of thought gets cut. So there&#8217;s no fixed silence threshold making the call. It&#8217;s more like &#8220;does this pause actually mean something given what&#8217;s being said around it.&#8221; Still tuning it, but that&#8217;s the exact line we care about most.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@doganakbulut\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@doganakbulut<\/a>&nbsp;thanks for the comment Dogan and Kind words! V nailed it, hopefully that answers your question!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Is there a free version to try out? Or do you have to pay right away? just tryna test it before committing<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@nir0b\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@nir0b<\/a>&nbsp;Currently, the plugin is free to try for 3 days, but in a week actually, we will be launching a completley free forever plan with some non-credit usage features like &#8220;silence cutter&#8221; and &#8220;image paster&#8221; + more.the free forever plan will be dropping soon \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! I like that AutoEdit focuses on removing repetitive editing work rather than trying to replace creators. That feels like a much more practical use of AI.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alina_tyslenok_\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alina_tyslenok_<\/a>&nbsp;Thank you Alina \ud83e\udee1 yeah thats the goal, to use AI to help the editors that already have a ton of work to do, so that way they can spend more time on meaningful work like the creative direction + storytelling! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>the no-external-upload thing is actually the main win here &#8211; i&#8217;ve abandoned two AI editing tools just from the friction of moving footage in and out. context-aware cuts instead of just silence detection is a smart angle too, a long pause isn&#8217;t always dead air<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@galdayan\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@galdayan<\/a>&nbsp;Hey Gal, thanks for the comment! very true! as a YouTuber myself, i cant tell you how much time i have spent just cutting out the bad takes and silences from my tutorials, having Claude being able to do all this for me helps a lot in the editing process, what kinds of videos do you mainly edit Gal?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">How long does it take to process edit? I\u2019ve tried bunch of ai editing tools and they are always super slow lol !<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@imtiaj_ahmad\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@imtiaj_ahmad<\/a>&nbsp;the plugin takes around 1-2 mins to load for a 10 mins clip of video processing, but it can also run much faster if you have a fast wifi connection. Its uses a Claude clouad connection to premiere pro to porccess all decisions making it a truly agentic video editor!<\/p>\n<\/p>\n<p>Lmk if that answers your question!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt \ud83d\udc4b<\/p>\n<\/p>\n<p>I&#8217;m Devin, a content creator and video editor.<\/p>\n<\/p>\n<p>I built AutoEdit because I was tired of spending 20+ hours every week manually cutting silences, bad takes, filler words, and repetitive talking-head footage from my YouTube and Instagram videos.<\/p>\n<\/p>\n<p>Most AI editing tools force you to upload your footage somewhere else, wait for processing, then export everything back into Premiere Pro. As editors, we already spend enough time moving files around.<\/p>\n<\/p>\n<p>I wanted something that worked directly inside Premiere.<\/p>\n<p>So we built AutoEdit Creator Mode.<\/p>\n<\/p>\n<p>It uses Claude AI to analyze your footage, identify weak takes, filler words, awkward pauses, repeated points, and automatically creates a rough cut directly on your Premiere Pro timeline.<\/p>\n<\/p>\n<p>The goal isn&#8217;t to replace editors.<\/p>\n<p>It&#8217;s to eliminate the repetitive editing work that nobody enjoys doing manually.<\/p>\n<p>A few things that make it different:<\/p>\n<p>\u26a1 Runs directly inside Premiere Pro<br \/>\u26a1 No uploading footage to external editing platforms<br \/>\u26a1 Uses Claude AI to understand context, not just silence detection<br \/>\u26a1 Builds an editable rough cut directly on your timeline<\/p>\n<\/p>\n<p>We&#8217;re still early and actively improving the product based on creator feedback.<\/p>\n<p>I&#8217;d love to hear from other editors and creators:<\/p>\n<\/p>\n<p>What&#8217;s the most annoying part of your editing workflow that you wish AI could handle for you?<\/p>\n<p>I&#8217;ll be here all day answering questions and collecting feedback. Thanks for checking us out \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Interesting. Does this tool have any competition?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@busmark_w_nika\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@busmark_w_nika<\/a>&nbsp;Hi Nika, thanks for commenting, great question, at the moment, there aren&#8217;t really any other direct Premiere Pro plugin tools like autoedit creator mode which integrates claude specifically for content creators. Obviously there are some other AI plugins out there but what makes ours unique is that we designed all the skills that claude utilizes to be specifically made for content creators who have to edit a lot of long talking head RAW footage. Hope that answers your question, and thanks for commenting!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>As someone who occasionally edits long-form content, removing silences, filler words, and bad takes is always the most repetitive part. How much manual review do creators typically do after AutoEdit generates the rough cut?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thankaselvan\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thankaselvan<\/a>&nbsp;great question, the cool part is that AutoEdit Creator Mode, is that it lets you review the takes before it applies the edits, you can keep all of them or cut none. <\/p>\n<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/8e984627-0893-4948-b2d6-0abefb34fdf6.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! Very interesting product especially since editing content is so time consuming. Are you planning on having any integration with the CapCut if that\u2019s possible?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@scott_davidson_jr\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@scott_davidson_jr<\/a>&nbsp;Hey Scott, thanks for the kind words! totally agree, editing is super time-consuming \ud83d\ude05<\/p>\n<p>Regarding a capcut add on, we dont plan to at the moment, but a Davinci integration is definitley coming soon. Plus we are making a free forevere plan for the plugin itself! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Does it work well with multiple speakers and overlapping audio for podcasts or interviews?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Yeah, totally! AutoEdit works great with multi-speaker stuff. It runs at the timeline level instead of trying to figure out who said what, so it just cuts silence, filler words and dead air across the whole track. That means overlapping speech and crosstalk stay intact instead of getting chopped up. Podcasts and interviews are honestly one of the most common use cases, that&#8217;s usually where it saves the most time.<\/p>\n<p>Happy to walk you through a real example if you wanna throw one at it!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>It&#8217;s great to see another spin on automating the business work out of editing content without getting in the way of creativity.  Nice plugin!  I wish I had more video to edit \ud83d\ude42   <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@anthony_latona\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@anthony_latona<\/a>&nbsp;Thanks, Anthony, for the comment ! yeah thats the goal, to leave the creative parts to the editors, but to save the the time of not having to do all the boring repetitive work!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Wow! It&#8217;s really impressive. Time saver but most important is it always gonna edit better than us. Not subjective cutting and great timing. Wish you all the best guys!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@german_merlo1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@german_merlo1<\/a>&nbsp;Hi German, great point, yeah its possible that the model will still make mistakes every now and then, but yeah, most importantly is that it can learn from user made adjustments making it better each edit. Thanks for the comment!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Premiere-native is a smart wedge. Removing restarts, filler words, and bad takes while keeping the editor in control solves the right boring part. Does AutoEdit preserve enough timeline structure that editors can audit each AI cut quickly?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;Hi Sarvesh, Yeah totally, theres actually a whole page that lets you review the edits before they are finalized so you can vet claude and check to see if it makes any mistakes. Thanks for the comment though man, great point!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congratulations <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@madalina_barbu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@madalina_barbu<\/a>&nbsp;thank you Madalina! \ud83e\udee1<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This looks really powerful for repetitive tasks and I&#8217;m excited to try it out.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@miketwalker1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@miketwalker1<\/a>&nbsp;Hey Mike, thanks for the kind words, yeah totally, you can try it out for free. Next week, we&#8217;ll be launching a free forever plan for the plugin too!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>As a Premiere Pro user this is right up my alley, the &#8220;remove the boring repetitive work, keep the creative decisions&#8221; framing is exactly the right line to walk \ud83d\ude42<\/p>\n<\/p>\n<p>My one practical question before trying it: how far back does the plugin support go? I&#8217;m still on the 2023 version (not everyone jumps to the latest each year), so I&#8217;d love to know the minimum Premiere version you support, and whether features like the silence\/filler removal and caption generation work the same across versions or only light up on the newest releases.<\/p>\n<\/p>\n<p>Also curious: does it run the analysis locally or does the footage get uploaded somewhere for Claude to process? That tends to matter a lot for anyone editing client work under NDA. Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@keirodev\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@keirodev<\/a>&nbsp;Hi Kevin, thanks!<\/p>\n<\/p>\n<p>To answer your questions, the plugin currently supports Premiere versions up to 2022, however, we recommend that you ave 2025+ for the most seamless best results, if you have an older version of premeire than 2025, its possible there may be some minor bugs and slower results.<\/p>\n<\/p>\n<p>Also the model does process all info on the cloud so yeah unfortunaelt i wouldnt advise editing NDA work with it. Lmk if you have any other questions!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Nicely made, team<\/p>\n<\/p>\n<p>What might a tool like Hyperframes or Remotion fare against Autoedit? OR is it completely different categories?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@peterz_shu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@peterz_shu<\/a>&nbsp;Thanks Peter for the comment ! great point, but AutoEdit is built specifically for premiere pro. Most video editors hate having to leave the software their using mid edit because it slows down the process, so thats why we built autoedit as a plugin for Premiere which works directly in the software, whereas hyperframes or remotion have to be used in an external browser. But great question! thanks man!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>As someone who has done video editing, I can definitely relate to how much time gets spent on repetitive tasks like cutting pauses, filler words, and retakes.<\/p>\n<p>What I like most is that AutoEdit works directly inside Premiere Pro. Not having to upload footage to another platform and then move everything back into your workflow is a huge advantage.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@gabriella_anjani\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gabriella_anjani<\/a>&nbsp;Hi Gabriella, thanks for the comment! yeah i totally agree, as a video editor first, it&#8217;s ridiculous when you realize how much time you spend just doing repetitive editing tasks. <\/p>\n<\/p>\n<p>Also yeah, glad you found the plugin directly in Premiere helpful, let us know if you have any feature requests!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey y&#8217;all, just posted another fun tutorial on the plugin on our channel! lmk what you think!<\/p>\n<\/p>\n<p><a href=\"https:\/\/youtu.be\/5TBk4OEj9Zw?si=c102aP56JYfM15YU\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/youtu.be\/5TBk4OEj9Zw?si=c102aP56JYfM15YU<\/a><\/p>\n<p><img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d9a8141a-eaf9-4221-a2c8-21c652158b82.png?auto=compress,format&amp;codec=mozjpeg&amp;cs=strip\" style=\"max-width: 100%\"><\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! Curious how does AutoEdit distinguish between filler pauses and intentional dramatic beats?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congratulations, looking at your website, it seems like a lot of work! I am an independent developer and have written several websites, but the traffic is average! I envy you, your website has more traffic than mine! Regarding registration, why doesn\u2019t it support google login?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#5<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/EFZITJ632XZJX3\" class=\"app-title\">PandaProbe Cloud<\/a><\/p>\n<div class=\"one-liner\">agent engineering, fully managed.<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">236<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>PandaProbe Cloud \u4e3aAI Agent\u56e2\u961f\u63d0\u4f9b\u5168\u6808\u8ffd\u8e2a\u3001\u8bc4\u4f30\u548c\u76d1\u63a7\u7684\u4e00\u7ad9\u5f0f\u6258\u7ba1\u670d\u52a1\uff0c\u89e3\u51b3Agent\u5728\u751f\u4ea7\u73af\u5883\u4e2d\u201c\u9759\u9ed8\u5931\u6548\u201d\u800c\u4f20\u7edf\u65e5\u5fd7\u65e0\u6cd5\u5b9a\u4f4d\u539f\u56e0\u7684\u6838\u5fc3\u75db\u70b9\uff0c\u8ba9\u5f00\u53d1\u8005\u65e0\u9700\u81ea\u5efa\u57fa\u7840\u8bbe\u65bd\u5373\u53ef\u5b9e\u73b0\u53ef\u89c2\u6d4b\u6027\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/314151ba-f54d-4b44-85a9-81f2a5dcc6aa.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b58d33e4-e078-451b-8a5a-fafb2901a692.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/3086ab60-9bc3-4ce3-a79f-e7573d648cac.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a595096c-082b-4e6d-8934-3bc8c7564129.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/4342241b-bbc3-4d61-ba6c-4fe9be1c1889.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/13356ea4-f7ec-4f68-b33f-c49664e64117.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/1118476f-2a86-4955-98c1-b3e8246b3967.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/Htdl9luufs4\"><source src=\"https:\/\/youtu.be\/Htdl9luufs4\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Open Source<\/span><br \/>\n            <span class=\"tag\">Developer Tools<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">GitHub<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Agent\u5de5\u7a0b<\/span><br \/>\n            <span class=\"tag\">\u5168\u6808\u8ffd\u8e2a<\/span><br \/>\n            <span class=\"tag\">\u8bc4\u4f30\u4e0e\u76d1\u63a7<\/span><br \/>\n            <span class=\"tag\">\u6258\u7ba1\u670d\u52a1<\/span><br \/>\n            <span class=\"tag\">\u4f1a\u8bdd\u5206\u6790<\/span><br \/>\n            <span class=\"tag\">AI\u53ef\u89c2\u6d4b\u6027<\/span><br \/>\n            <span class=\"tag\">\u591aAgent\u5de5\u4f5c\u6d41<\/span><br \/>\n            <span class=\"tag\">MCP\u517c\u5bb9<\/span><br \/>\n            <span class=\"tag\">\u6a21\u578b\u8c03\u8bd5<\/span><br \/>\n            <span class=\"tag\">\u751f\u4ea7\u73af\u5883<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u5176\u89e3\u51b3\u4e86Agent\u8c03\u8bd5\u8003\u53e4\u96be\u9898\uff0c\u5e76\u4e0eLangfuse\/Smith\u5f62\u6210\u5dee\u5f02\u5316\u3002\u6838\u5fc3\u5173\u6ce8\u70b9\u96c6\u4e2d\u5728\uff1a\u6570\u636e\u8fc1\u79fb\u517c\u5bb9\u6027\u4e0eSchema\u4e00\u81f4\u6027\u3001\u975e\u786e\u5b9a\u6027\u8f93\u51fa\u4e0b\u7684\u8bc4\u4f30\u51c6\u786e\u6027\u3001MCP\u8c03\u7528\u6df1\u5ea6\u8ffd\u8e2a\u3001\u81ea\u5b9a\u4e49\u8bc4\u4f30\u6307\u6807\u652f\u6301\uff0c\u4ee5\u53ca\u5f02\u6b65\u6247\u51fa\u5b50Agent\u7684\u4f1a\u8bdd\u5f52\u56e0\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                PandaProbe Cloud\u5728\u201cAgent\u53ef\u89c2\u6d4b\u6027\u201d\u8fd9\u7247\u7ea2\u6d77\u4e2d\uff0c\u7cbe\u51c6\u5207\u5165\u4e86\u4e00\u4e2a\u88abLangSmith\u548cLangfuse\u7b49\u4f20\u7edfLLM\u8ffd\u8e2a\u5de5\u5177\u6240\u5ffd\u89c6\u7684\u76f2\u533a\u2014\u2014**\u4ee5\u201c\u4f1a\u8bdd\uff08Session\uff09\u201d\u800c\u975e\u201c\u7ebf\u7a0b\uff08Trace\uff09\u201d\u4e3a\u5206\u6790\u5355\u5143**\u3002\u8fd9\u4e00\u5b9a\u4f4d\u4f7f\u5176\u5929\u7136\u9002\u914d\u957f\u94fe\u3001\u591a\u6b65\u3001\u5e26\u5b50Agent\u8c03\u7528\u7684\u590d\u6742\u751f\u4ea7\u573a\u666f\uff0c\u8fd9\u662f\u4ea7\u54c1\u6700\u5177\u6218\u7565\u4ef7\u503c\u7684\u5dee\u5f02\u5316\u62a4\u57ce\u6cb3\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4ece\u6df1\u5c42\u6b21\u770b\uff0cPandaProbe\u6d1e\u5bdf\u5230Agent\u5de5\u7a0b\u7684\u6838\u5fc3\u77db\u76fe\u5df2\u7ecf\u8f6c\u79fb\uff1a\u95ee\u9898\u4e0d\u5728\u4e8e\u201cLLM\u662f\u5426\u7b54\u5bf9\u201d\uff0c\u800c\u5728\u4e8e\u201cAgent\u884c\u4e3a\u662f\u5426\u53ef\u9760\u201d\u3002\u5176\u5f15\u5165\u7684TRACER\u7b49\u884c\u4e3a\u7a33\u5b9a\u6027\u6307\u6807\uff0c\u52a0\u4e0a\u5bf9\u975e\u786e\u5b9a\u6027\u7684\u6570\u5b66\u5316\u5904\u7406\uff0c\u6b63\u662f\u89e3\u51b3\u201c\u6bd4\u5927\u5c0f\u201d\u4e4b\u5916\u590d\u6742Agent\u53ef\u9760\u6027\u95ee\u9898\u7684\u6b63\u786e\u6280\u672f\u8def\u5f84\u3002\u521b\u59cb\u4eba\u56de\u5e94\u8bc4\u8bba\u65f6\u900f\u9732\u7684\u201c\u4ece\u8ffd\u8e2a\u5230\u5b8c\u6574Agent\u5de5\u7a0b\u5e73\u53f0\u201d\u7684\u613f\u666f\uff0c\u4e5f\u8ba9\u4ea7\u54c1\u5177\u5907\u4e86\u4ece\u201c\u76d1\u63a7\u5de5\u5177\u201d\u8fdb\u5316\u4e3a\u201c\u5f00\u53d1\u57fa\u5ea7\u201d\u7684\u9ad8\u4f30\u503c\u60f3\u8c61\u7a7a\u95f4\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u98ce\u9669\u540c\u6837\u4e0d\u5bb9\u5ffd\u89c6\u3002\u9996\u5148\uff0c\u4ea7\u54c1\u76ee\u524d\u5904\u4e8e\u4ece\u5f00\u6e90\u5230\u6258\u7ba1\u7684\u65e9\u671f\u9636\u6bb5\uff0c\u8bc4\u8bba\u4e2d\u5173\u4e8e\u201c\u8fc1\u79fb\u5bfc\u51fa\u529f\u80fd\u672a\u5c31\u7eea\u201d\u3001\u201c\u81ea\u5b9a\u4e49\u8bc4\u4f30\u7f3a\u5931\u201d\u3001\u201c\u6df1\u5c42MCP\u4e0a\u4e0b\u6587\u4e22\u5931\u201d\u7b49\u5766\u8bda\u53cd\u9988\uff0c\u66b4\u9732\u4e86\u4ea7\u54c1\u6210\u719f\u5ea6\u4ecd\u6709\u660e\u663e\u77ed\u677f\uff0c\u8fd9\u4f1a\u4fc3\u4f7f\u5927\u578b\u4f01\u4e1a\u5ba2\u6237\u5728\u6570\u636e\u4e3b\u6743\u548c\u5b9a\u5236\u5316\u9700\u6c42\u524d\u4ea7\u751f\u987e\u8651\u3002\u5176\u6b21\uff0cLangSmith\u3001Langfuse\u7b49\u5bf9\u624b\u968f\u65f6\u53ef\u80fd\u5728\u67b6\u6784\u4e0a\u8fdb\u884c\u964d\u7ef4\u6253\u51fb\u3002\u5018\u82e5PandaProbe\u4e0d\u80fd\u5feb\u901f\u8865\u9f50\u6570\u636e\u8fc1\u79fb\u3001\u9ad8\u7ea7\u81ea\u5b9a\u4e49\u6307\u6807\u3001\u591a\u5c42\u4e0a\u4e0b\u6587\u7a7f\u900f\uff08\u5c24\u5176\u662fMCP\u6df1\u5ea6\uff09\u7b49\u57fa\u7840\u8bbe\u65bd\uff0c\u5176\u9996\u53d1\u4f18\u52bf\u5c06\u5f88\u5feb\u88ab\u6a21\u4eff\u4e0e\u8ddf\u8fdb\u6240\u7a00\u91ca\u3002\u4e00\u53e5\u8bdd\u603b\u7ed3\uff1a\u5b9a\u4f4d\u7cbe\u51c6\u3001\u6982\u5ff5\u9886\u5148\uff0c\u4f46\u201c\u6700\u540e\u4e00\u516c\u91cc\u201d\u7684\u5de5\u7a0b\u5b8c\u5584\u5ea6\u662f\u51b3\u5b9a\u5176\u80fd\u5426\u4ece\u5c0f\u4f17\u521b\u65b0\u8d70\u5411\u4e3b\u6d41\u6210\u529f\u7684\u5173\u952e\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">PandaProbe Cloud<\/span>\n                <\/div>\n<div class=\"comment-content\">PandaProbe Cloud gives your team full-stack tracing, evals, and monitoring for agents with zero infrastructure to manage. Ship better agents without the ops overhead.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>\ud83d\udc4b Hey Product Hunt!<\/p>\n<p>I&#8217;m Sina, founder of PandaProbe.<\/p>\n<p>A while back we launched the open-source version here \u2014 the response was incredible. Today we&#8217;re back with what many of you asked for: PandaProbe Cloud \u2014 full-stack tracing, evals, and monitoring for agents, with zero infrastructure to manage.<\/p>\n<p>Here&#8217;s a pattern every agent builder knows: you ship, it looks fine in testing, then quietly misbehaves in production \u2014 nobody knows why. Once agents start chaining LLMs, tools, APIs, MCPs, and sub-agents, debugging becomes archaeology. Logs tell you something happened \u2014 not why, not whether quality regressed, not how the session held together. And solving that shouldn&#8217;t mean building your own agent engineering stack.<\/p>\n<p>That&#8217;s PandaProbe Cloud: ship better agents without the ops overhead.<\/p>\n<p><strong>What you get<\/strong><br \/>\ud83d\udd0e Tracing \u2014 full agent executions captured as sessions, traces, and spans.<br \/>\ud83d\udcca Evaluation \u2014 score traces and sessions using SOTA agent-specific metrics.<br \/>\u23f1\ufe0f Monitoring \u2014 schedule recurring evals to track your agent&#8217;s health in production.<br \/>\u2601\ufe0f Fully managed \u2014 we handle the infra. You just connect, ship, and improve.<\/p>\n<p><strong>Who it&#8217;s for<\/strong><br \/>\ud83e\uddd1\u200d\ud83d\udcbb AI engineers debugging agent behavior across LLMs, tools, and workflows.<br \/>\ud83c\udfd7\ufe0f Platform teams monitoring quality and reliability without owning more infra.<br \/>\ud83d\udd2c Builders experimenting with agents who want to iterate faster.<br \/>\ud83d\ude80 Startups who want production-grade observability from day one.<\/p>\n<\/p>\n<p><strong>Quickstart:<\/strong><\/p>\n<p>\u2601\ufe0f Cloud signup: <a href=\"https:\/\/app.pandaprobe.com\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/app.pandaprobe.com\/<\/a><\/p>\n<p>\ud83e\udd16 Run: npx skills add chirpz-ai\/pandaprobe-skills &#8211;skill &#8216;*&#8217; &#8211;yes<\/p>\n<p>\ud83d\udca5 Then ask your coding agent to &#8220;set up PandaProbe&#8221;.<\/p>\n<p>Free to start \u2014 generous usage credits. Up and running in minutes.<\/p>\n<p><strong>Quick links<\/strong><br \/>\ud83d\udcd6 Docs: <a href=\"https:\/\/docs.pandaprobe.com\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/docs.pandaprobe.com<\/a><br \/>\u2b50 Open source: <a href=\"https:\/\/github.com\/chirpz-ai\/pandaprobe\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/github.com\/chirpz-ai\/pandaprobe<\/a><\/p>\n<p>I&#8217;ll be here all day \u2014 drop your questions and feedback below.<\/p>\n<p>Thanks for checking it out \ud83d\ude4f<br \/>\u2014 Sina<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>5<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey <a href=\"https:\/\/www.producthunt.com\/@sina_tayebati\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"sina_tayebati\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sina_tayebati<\/a>  ,<br \/>qq if we start on cloud but need to migrate back to self-hosted open source later because of data residency laws, is the data schema 100% compatible?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vikramp7470\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vikramp7470<\/a>&nbsp;Great question! Schema-wise, yes \u2014 fully compatible between Cloud and open-source.<\/p>\n<p>Honest caveat though: a dedicated migration export feature isn&#8217;t live yet. It&#8217;s on the roadmap, but worth knowing upfront if data residency is a hard requirement for you.<\/p>\n<p>Happy to chat through your situation if it helps \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Just curios how is it different from langfuse\/smith?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@naor_sabag\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@naor_sabag<\/a>&nbsp;Great question \u2014 LangSmith and Langfuse are built around the <strong>trace<\/strong> as the unit of analysis. They&#8217;re great at showing what happened inside individual LLM calls. PandaProbe is built around the <strong>session<\/strong> \u2014 the full agent lifecycle \u2014 as the unit of analysis.<\/p>\n<p>That distinction matters for long-running, multi-step agents. A trace tells you one step went wrong. A session tells you whether the agent was reliable across the entire trajectory \u2014 and our eval metrics, grounded in peer-reviewed research, are purpose-built to catch that. (TRACER, ICML 2026 \u2192 <a href=\"https:\/\/arxiv.org\/abs\/2602.11409\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/arxiv.org\/abs\/2602.11409<\/a>)<\/p>\n<p>But honestly, tracing and evals are just the foundation. We&#8217;re building towards something bigger \u2014 a complete agent engineering platform that gives teams everything they need to develop, evaluate, and continuously improve agents in production. This launch is the first chapter of that vision. \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Bundling tracing, evals, and monitoring into a single managed layer is a sharp call. Teams building agent pipelines typically end up with fragile homegrown span logging that breaks the moment they chain subagents. The hardest part of multi-agent workflows isn&#8217;t inference: it&#8217;s reconstructing what happened across tool calls when something fails silently. How does trace collection handle async fan-out across spawned subagents?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@anand_thakkar1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@anand_thakkar1<\/a>&nbsp;You&#8217;ve nailed exactly why homegrown span logging breaks down \u2014 the moment you introduce subagents, the causal chain fragments and silent failures become invisible.<\/p>\n<p>PandaProbe handles this through the session model. Rather than treating each trace in isolation, PandaProbe groups all traces \u2014 including those spawned across subagents \u2014 into a single session that represents the full agent lifecycle. This means even when execution fans out across parallel or async subagent calls, the session becomes your reconstruction layer: you can see the full execution tree, where control passed, and where things broke down across the chain.<\/p>\n<\/p>\n<p>The goal is exactly what you described \u2014 making &#8220;what actually happened&#8221; answerable without having to manually piece together fragmented logs after the fact.<\/p>\n<p>What kind of fan-out patterns are you dealing with? Happy to dig into specifics. \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the cloud launch <a href=\"https:\/\/www.producthunt.com\/@sina_tayebati\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"sina_tayebati\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sina_tayebati<\/a> <\/p>\n<p>The open-source version saved me during a nasty multi-agent debug a few months back, so this is exciting. Does the eval scoring work for custom agent frameworks or is it tied to specific SDKs?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@kate_ramakaieva\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@kate_ramakaieva<\/a>&nbsp;Thank you, really glad PandaProbe helped you get through that debug \u2014 multi-agent issues are the worst to untangle!<\/p>\n<p>And yes, absolutely works with custom frameworks. The SDK provides decorators you can wrap around any custom agent orchestration or logic, so you&#8217;re not locked into specific frameworks. Whether you&#8217;ve built something fully custom or are using a framework we don&#8217;t have a native integration for yet, you can still get full tracing coverage with minimal instrumentation.<\/p>\n<p>Would love to hear what stack you&#8217;re running \u2014 always useful to know what people are building with! \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I like the focus on making agent debugging and monitoring easier. As agent workflows become more complex, having better visibility into what&#8217;s happening behind the scenes is incredibly valuable.<\/p>\n<p>The fully managed approach is a big plus too.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@gabriella_anjani\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gabriella_anjani<\/a>&nbsp;Thank you, really appreciate that! \ud83d\ude4f<\/p>\n<p>You nailed the core of it \u2014 as agent workflows get more complex, visibility isn&#8217;t a nice-to-have anymore, it&#8217;s what separates teams that can iterate confidently from those flying blind.<\/p>\n<p>Would love to hear what you&#8217;re building if you ever want to share \u2014 always happy to chat and see how PandaProbe can help. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>&#8220;debugging becomes archaeology&#8221; lol yeah. once one action turns into 5 tool calls and a couple sub-agents the logs just tell you the order stuff happened, not why it went wrong<\/p>\n<p>how does the eval side deal with non-determinism though? same input gives slightly different traces every run, so how do you score regressions without drowning in false positives<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@onnova\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@onnova<\/a>&nbsp;&#8220;Debugging becomes archaeology&#8221; \u2014 glad that landed \ud83d\ude04<\/p>\n<p>Great question, and it&#8217;s exactly why trace-by-trace regression scoring breaks down \u2014 you end up chasing output variance instead of actual failures.<\/p>\n<p>PandaProbe handles this with two session-level metrics built on behavioral signals \u2014 confidence, loop detection, tool correctness, coherence \u2014 not exact trace outputs. One focuses on worst-case tail risk across the session, the other on stability spread. Both are purely mathematical algorithms and supported by theory. The result: stochastic variance that doesn&#8217;t affect behavioral quality simply doesn&#8217;t move the score.<\/p>\n<p>You&#8217;re not asking &#8220;did it produce the same output&#8221; \u2014 you&#8217;re asking &#8220;did it behave reliably.&#8221; That&#8217;s a fundamentally more robust question to answer under non-determinism.<\/p>\n<p>Research foundation here if you want to dig in: TRACER, accepted ICML 2026 \u2192 <a href=\"https:\/\/arxiv.org\/abs\/2602.11409\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/arxiv.org\/abs\/2602.11409<\/a> \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is so cool, congrats!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@nafis_amiri\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@nafis_amiri<\/a>&nbsp;Thanks for your support Nafis \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>For MCP-heavy agents, I\u2019m curious how session grouping works in Cloud. Do MCP tool calls get attached to one session timeline automatically, or is that only reliable if I pass the same session_id through each layer?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@novamaker01\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@novamaker01<\/a>&nbsp;Great question, and an important one for MCP-heavy setups.<\/p>\n<p>MCP tool calls get attached to the session timeline automatically \u2014 as long as the instrumentation wrapper carries the session_id, our integration intercepts and captures all MCP calls and their context without any extra wiring on your end.<\/p>\n<p>One thing worth knowing: if your MCP calls involve multi-layer data access, there may be some context loss at those deeper layers. It&#8217;s something we&#8217;re actively working on, but for the vast majority of MCP setups you&#8217;ll get full, automatic session correlation out of the box.<\/p>\n<p>Happy to dig into specifics if you want to share more about your setup. \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Agent observability gets messy once the same user task spans tools + retries, so the session\/traces\/spans framing makes sense. One thing I&#8217;d check before wiring this into prod: can evals be versioned against both prompt\/model changes and tool schema changes? Otherwise a regression dashboard can get a little misleading after an MCP\/API update.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@xiaosong001\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@xiaosong001<\/a>&nbsp;Sharp observation \u2014 and yes, PandaProbe handles this. Traces and sessions can be versioned and tagged, so you can anchor your eval runs to specific prompt or model versions and compare apples to apples after a change.<\/p>\n<p>You can also filter across dev and prod environments separately, which helps a lot with exactly the scenario you&#8217;re describing \u2014 making sure a regression signal is a real behavioral shift, not just noise from a schema or API update.<\/p>\n<p>It&#8217;s the kind of thing that matters a lot in prod and not at all in a demo, so glad you raised it \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the Cloud launch. The session-as-the-unit framing feels right for agents, because individual traces are not enough once tools, MCP calls, and subagents start branching.<\/p>\n<p>One edge case I\u2019d love to understand: if an agent fans out into parallel subagents and some tool calls continue after the parent task has already moved on, how does PandaProbe decide what still belongs to the same session timeline? Is it based on explicit session IDs, automatic propagation, or both?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@studentzuo\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@studentzuo<\/a>&nbsp;This one has a specific edge case detail I want you to verify \u2014 flagging with a bracket:<\/p>\n<p>Great question, and you&#8217;ve picked out exactly the edge case that breaks most session grouping approaches.<\/p>\n<p>PandaProbe&#8217;s session grouping is built on session_id propagation through the instrumentation wrapper \u2014 as long as the session_id is carried through, spans from parallel subagents and async tool calls get attached to the correct session timeline automatically, even if they resolve after the parent task has moved on.<\/p>\n<\/p>\n<p>The framing you used is exactly right \u2014 individual traces aren&#8217;t the unit that matters once you&#8217;re dealing with fan-out. The session is what gives you the full picture. Happy to dig into specifics if you want to share more about your setup \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Most agent failures happen silently in production how does PandaProbe differentiate between a hallucination a tool call failure and a reasoning breakdown when surfacing what actually went wrong in a trace?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Looks great<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@madalina_barbu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@madalina_barbu<\/a>&nbsp;thanks for your support \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Does this actually trace inside MCP tool calls or just log that they were triggered? <\/p>\n<p>That&#8217;s always been the blind spot for me with most observability tools<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@boyuan_deng1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@boyuan_deng1<\/a>&nbsp;We go inside \u2014 not just log the trigger. PandaProbe&#8217;s integrations intercept and capture MCP tool calls and their full context, so you get visibility into what actually happened inside the call, not just that it fired.<\/p>\n<p>One honest caveat: if your MCP call involves multi-layer data access, there may be some context loss at the deeper layers. For the vast majority of MCP setups though, you get full trace coverage automatically.<\/p>\n<p>Exactly the blind spot we set out to fix \u2014 would love to hear what stack you&#8217;re running if you want to dig into specifics \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Been waiting for something like this honestly. <br \/>Quick question, the agent evals, are those pre-built metrics or can you define what &#8220;good&#8221; looks like for your own use case?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@abod_rehman\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@abod_rehman<\/a>&nbsp;Both, kind of! PandaProbe ships with pre-built metrics out of the box \u2014 9 trace-level metrics plus two session-level metrics purpose-built for long-running agents covering failure risk and behavioral stability.<\/p>\n<p>Custom metrics aren&#8217;t supported yet, but you can customize the parameters of each metric and eval run to better reflect what &#8220;good&#8221; looks like for your specific use case.<\/p>\n<p>It&#8217;s on our roadmap \u2014 what kind of custom scoring would be most useful for you? Always helpful to know what people are actually building \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>&#8220;Debugging becomes archaeology&#8221; is painfully accurate once subagents and tool calls start chaining. Making the session (not the trace) the unit of analysis is a smart angle for multi-step agents. Congrats on the Cloud launch! How generous are the free tier credits to start experimenting?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@doganakbulut\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@doganakbulut<\/a>&nbsp;Thank you, and yes \u2014 the session as the unit of analysis is the core insight that makes everything else work for multi-step agents. Glad that resonated!<\/p>\n<p>On the free tier: 100 trace ingestions, 100 trace eval runs, and 10 session eval runs per month \u2014 plus human annotation, all on a single seat. Enough to instrument a real agent, run meaningful evals, and get genuine session-level insights before spending anything.<\/p>\n<p>Full breakdown here: <a href=\"https:\/\/www.pandaprobe.com\/pricing\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/www.pandaprobe.com\/pricing<\/a> \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#6<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/K25AMX5IAKYYMJ\" class=\"app-title\">Notra Image Generation<\/a><\/p>\n<div class=\"one-liner\">Turn merged PRs into on-brand marketing visuals<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">180<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>\u5c06GitHub\u5408\u5e76\u7684PR\u81ea\u52a8\u8f6c\u5316\u4e3a\u7b26\u5408\u54c1\u724c\u8c03\u6027\u7684\u8425\u9500\u89c6\u89c9\u5185\u5bb9\uff08\u5982\u66f4\u65b0\u65e5\u5fd7\u3001\u793e\u4ea4\u5a92\u4f53\u5e16\u6587\uff09\uff0c\u89e3\u51b3\u5f00\u53d1\u56e2\u961f\u201c\u6709\u6210\u679c\u96be\u5ba3\u53d1\u201d\u7684\u75db\u70b9\uff0c\u65e0\u9700\u624b\u52a8\u7f16\u5199\u63d0\u793a\u8bcd\u5373\u53ef\u751f\u6210\u53ef\u7f16\u8f91\u7684\u8bbe\u8ba1\u7d20\u6750\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/4e6d2919-3133-4475-b7c1-e6614115c9f2.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/3cac2533-1406-4445-b6dd-01b7d5f037d9.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6e14691d-6581-48ee-b6aa-f5a6c6efe01a.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/4e971ec0-0063-4409-96ad-122a78c1468e.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/e492532d-e4b1-42dd-bda1-ba5f6d1a9111.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/isgpm7RwXR8\"><source src=\"https:\/\/youtu.be\/isgpm7RwXR8\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Marketing<\/span><br \/>\n            <span class=\"tag\">SaaS<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u81ea\u52a8\u8425\u9500\u7d20\u6750\u751f\u6210<\/span><br \/>\n            <span class=\"tag\">\u5f00\u53d1\u56e2\u961f\u6548\u7387\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">Figma\u9006\u5411\u5de5\u7a0b<\/span><br \/>\n            <span class=\"tag\">PR\u8f6c\u89c6\u89c9\u5185\u5bb9<\/span><br \/>\n            <span class=\"tag\">\u54c1\u724c\u4e00\u81f4\u6027<\/span><br \/>\n            <span class=\"tag\">\u4ee3\u7801\u9a71\u52a8\u8bbe\u8ba1<\/span><br \/>\n            <span class=\"tag\">GitHub\/Linar\u96c6\u6210<\/span><br \/>\n            <span class=\"tag\">\u6587\u672c\u5230\u8bbe\u8ba1<\/span><br \/>\n            <span class=\"tag\">\u66f4\u65b0\u65e5\u5fd7\u81ea\u52a8\u5316<\/span><br \/>\n            <span class=\"tag\">\u793e\u4ea4\u5a92\u4f53\u81ea\u52a8\u5316<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u80af\u5b9a\u5176\u8282\u7701\u65f6\u95f4\u53ca\u201c\u5df2\u53d1\u5e03\u5de5\u4f5c\u201d\u9a71\u52a8\u601d\u8def\uff0c\u4f46\u53cd\u9988\u7f51\u7ad9\u7f3a\u5c11\u56fe\u50cf\u751f\u6210\u793a\u4f8b\uff0c\u8d28\u7591\u751f\u6210\u5185\u5bb9\u662f\u5426\u4ec5\u9650\u6587\u672c\/UI\uff0c\u8be2\u95ee\u5bf9\u8bed\u6c14\u548c\u683c\u5f0f\u7684\u63a7\u5236\u7a0b\u5ea6\uff0c\u5e76\u5efa\u8bae\u672a\u6765\u652f\u6301\u52a8\u6548\/\u89c6\u9891\u3002\u53e6\u6709\u7528\u6237\u597d\u5947\u662f\u5426\u4ec5\u4ecePR\u6807\u9898\u8fd8\u662f\u4ece\u5b8c\u6574diff\u4e2d\u63d0\u53d6\u4e0a\u4e0b\u6587\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Notra\u7684\u5207\u5165\u70b9\u6781\u5177\u6d1e\u5bdf\u529b\u2014\u2014\u5b83\u7cbe\u51c6\u547d\u4e2d\u4e86\u5f00\u53d1\u56e2\u961f\u201c\u505a\u51fa\u7ed3\u679c\u4f46\u65e0\u529b\u5406\u559d\u201d\u8fd9\u4e00\u9690\u5f62\u751f\u4ea7\u94fe\u8def\u65ad\u88c2\u70b9\u3002\u4f20\u7edf\u5de5\u4f5c\u6d41\u4e2d\uff0c\u5199\u66f4\u65b0\u65e5\u5fd7\u3001\u505a\u5ba3\u4f20\u56fe\u662f\u72ec\u7acb\u4e8e\u7f16\u7801\u7684\u201c\u82e6\u5f79\u201d\uff0c\u5f80\u5f80\u88ab\u62d6\u5ef6\u6216\u5916\u5305\uff0c\u5bfc\u81f4\u6280\u672f\u4ef7\u503c\u4f20\u64ad\u6ede\u540e\u3002Notra\u901a\u8fc7\u9006\u5411\u5de5\u7a0bFigma\u5e76\u81ea\u5efa\u7f16\u89e3\u7801\u5668\uff0c\u5c06\u201c\u4ee3\u7801\u5408\u5e76\u201d\u8fd9\u4e00\u786e\u5b9a\u6027\u884c\u4e3a\u76f4\u63a5\u8f6c\u5316\u4e3a\u201c\u53ef\u7f16\u8f91\u7684\u8bbe\u8ba1\u8d44\u4ea7\u201d\uff0c\u672c\u8d28\u4e0a\u6d88\u706d\u4e86\u4ece\u6280\u672f\u4e8b\u5b9e\uff08PR\uff09\u5230\u8425\u9500\u8bed\u8a00\u4e4b\u95f4\u7684\u7ffb\u8bd1\u635f\u8017\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u5176\u771f\u6b63\u7684\u62a4\u57ce\u6cb3\u4e0d\u5728\u4e8eAI\u751f\u56fe\u80fd\u529b\uff08\u8fd9\u5df2\u662f\u7ea2\u6d77\uff09\uff0c\u800c\u5728\u4e8e\u201c\u4ee3\u7801\u5373\u8bbe\u8ba1\u6e90\u201d\u7684\u95ed\u73af\uff1a\u7528\u6237\u4e0d\u662f\u62ff\u5230\u4e00\u5f20\u65e0\u6cd5\u4e8c\u6b21\u4fee\u6539\u7684AI\u5e9f\u7247\uff0c\u800c\u662f\u83b7\u5f97\u53ef\u5728Figma\/Paper\u4e2d\u76f4\u63a5\u7f16\u8f91\u7684\u6e90\u6587\u4ef6\u3002\u8fd9\u89e3\u51b3\u4e86AI\u751f\u6210\u5185\u5bb9\u5728\u4e13\u4e1a\u573a\u666f\u4e2d\u201c\u4e0d\u53ef\u63a7\u3001\u4e0d\u53ef\u8c03\u201d\u7684\u81f4\u547d\u7f3a\u9677\uff0c\u8ba9\u8425\u9500\u4eba\u5458\u80fd\u4fdd\u7559\u5bf9\u54c1\u724c\u8c03\u6027\u7684\u6700\u7ec8\u88c1\u5b9a\u6743\u3002\u540c\u65f6\uff0c\u5b83\u9690\u6666\u5730\u6784\u5efa\u4e86\u6570\u636e\u58c1\u5792\u2014\u2014\u6df1\u5ea6\u7ed1\u5b9aGitHub\u548cLinear\u7684\u4e0a\u4e0b\u6587\uff08issue\u3001diff\u3001changelog\u5386\u53f2\uff09\uff0c\u4f7f\u7ade\u54c1\u4ec5\u9760\u901a\u7528AI\u96be\u4ee5\u590d\u73b0\u540c\u7b49\u8d28\u91cf\u7684\u201c\u54c1\u724c\u5316\u53d9\u4e8b\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u6f5c\u5728\u98ce\u9669\u5728\u4e8e\uff1a\u4ea7\u54c1\u5f62\u6001\u8fc7\u65e9\u201c\u5939\u5728\u4ee3\u7801\u4e0e\u8bbe\u8ba1\u4e4b\u95f4\u201d\uff0c\u53ef\u80fd\u9677\u5165\u4e24\u7aef\u90fd\u4e0d\u8ba8\u597d\u7684\u5883\u5730\u2014\u2014\u5f00\u53d1\u8005\u8ba4\u4e3a\u5b83\u8fc7\u4e8e\u8425\u9500\u5411\uff0c\u8bbe\u8ba1\u5e08\u89c9\u5f97\u5b83\u4e0d\u591f\u4e13\u4e1a\u3002\u6b64\u5916\uff0c\u7528\u6237\u793a\u4f8b\u5c55\u793a\u7684\u4ec5\u4e3a\u57fa\u7840UI\u548c\u6587\u672c\uff0c\u82e5\u65e0\u6cd5\u9ad8\u6548\u5904\u7406\u771f\u5b9e\u4ea7\u54c1\u622a\u56fe\u6216\u590d\u6742\u89c6\u89c9\u7ec4\u4ef6\uff0c\u5c06\u4e25\u91cd\u9650\u5236\u9ad8\u9891\u573a\u666f\uff08\u5982\u4ea7\u54c1\u66f4\u65b0\u8f6e\u64ad\u56fe\uff09\u7684\u5b9e\u7528\u4ef7\u503c\u3002\u5efa\u8bae\u56e2\u961f\u5c3d\u5feb\u8865\u8db3\u201c\u8349\u56fe\u5230\u6210\u54c1\u201d\u7684\u8303\u4f8b\u5e93\uff0c\u5e76\u5411\u201cPR\u5bfc\u51fa\u4e3a\u591a\u5a92\u4f53\uff08\u52a8\u6548\/\u89c6\u9891\uff09\u201d\u5feb\u901f\u6f14\u8fdb\uff0c\u56e0\u4e3a\u5728\u8425\u9500\u51b3\u7b56\u8005\u773c\u4e2d\uff0c\u9759\u6001\u56fe\u7684\u8fb9\u9645\u4ef7\u503c\u5f88\u5feb\u4f1a\u89e6\u53ca\u5929\u82b1\u677f\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Notra Image Generation<\/span>\n                <\/div>\n<div class=\"comment-content\">Notra turns shipped work into changelogs, launch posts, and social updates in your voice.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hello ProductHunt Community,<\/p>\n<\/p>\n<p>this launch has been the biggest thing we have built to date. Generating beautiful visuals from your shipped work without you having to write a single prompt.<\/p>\n<\/p>\n<p>For this to work as smooth as possible we reverse engineered Figma and built our own codec to allow you to paste the output directly into Figma or Paper and make changes to it before posting.<\/p>\n<\/p>\n<p>I hope you can give it a try, give us valuable feedback and share what you think!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>11<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@dominikkoch\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dominikkoch<\/a>&nbsp;Very cool use case. A lot of teams ship features but struggle to turn that work into content. Connecting GitHub and Linear to automatically generate changelogs, blog posts, and social updates could save a surprising amount of time.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Interesting and cool idea! One thing I am really missing is some examples. I see you have a standard change log on your website, but I don&#8217;t see anything about the image generation in particular. I also wonder if those images include only texts or also images\/screenshots?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@ramin_\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ramin_<\/a>&nbsp;Thats a good point, there is the emdash example in the image carousel here but I agree the website does need more examples! For now its only ui and text, images should work but it tries to use real ui when it can. Screenshots are supported yet might need to add that in the future!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>congrats on the launch!!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@hhendrix\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@hhendrix<\/a>&nbsp;Thanks a lot Hendrix!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>i have been using notra for my projects beacuse it made writing changelogs\/blog posts sooooo easy and now this new image gen feature is just what ive been missing<\/p>\n<\/p>\n<p>great launch and thanks for the beta access! \ud83d\ude42 <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@janburzinski\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@janburzinski<\/a>&nbsp;Thanks a lot Jan, your feedback and support truely shaped this launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is great! Congrats on building and launching. Excited to start using it at Emdash. Are you considering to build motion graphics in the future as well?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@raban\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@raban<\/a>&nbsp;Thank you Raban! And yes if Image Generation is accepted well I am looking to add videos\/motion graphics as well!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Turning merged PRs into launch content is a very real founder pain. The \u201cin your voice\u201d piece matters more than raw generation here. Are you pulling context from PR titles only, or also diffs, issues, and changelog history?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;Thanks Sarvesh, everything the agent can find helps it create better content so its pretty much everything.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch <a href=\"https:\/\/www.producthunt.com\/@dominikkoch\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"dominikkoch\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@dominikkoch<\/a>! Honestly image generation like this quality is going to be such a time saver for us to actually commit to promoting everything our audience finds useful to know about when we ship at <a href=\"https:\/\/Inth.com\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Inth.com<\/a> and <a href=\"https:\/\/c15t.com\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">c15t.com<\/a>. It&#8217;s been a joy to see Dom work behind the scenes on this.<\/p>\n<\/p>\n<p>P.s thanks for using c15t as one of the guinea pig brands you were testing on!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@willdeaf\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@willdeaf<\/a>&nbsp;Im glad you enjoyed the release Will. Thank you for the idea for this and your patience while I worked on this!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I like that Notra starts from shipped work instead of asking the team to write another prompt or rebuild the story manually.<\/p>\n<\/p>\n<p>The Figma\/Paper paste workflow sounds especially interesting. Curious how much control teams have over the tone and format of the generated outputs, especially if they want changelogs to feel more human and less like release notes.<\/p>\n<\/p>\n<p>Really useful direction. \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@andrasczeizel\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@andrasczeizel<\/a>&nbsp;We give you full control over almost everything thats going on if you don&#8217;t like how we write changelogs you can edit our system to be closer to your own way of writing!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch; great product Dominik \ud83d\ude00<\/p>\n<\/p>\n<p>Do you think that Code should follow brand images, or brand images follow code? Cuz it feels like code almost doesn&#8217;t do &#8220;as good as a job&#8221; at capturing a brand&#8217;s image as just another image does.<\/p>\n<\/p>\n<p>Any examples?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@peterz_shu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@peterz_shu<\/a>&nbsp;Ideally both are synced. For notra we wanna make sure the images look like your brand so code is the best option there is since it still gives you full control over the final image because you can edit them in Paper or Figma!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Turning merged PRs into on-brand visuals is such a smart use of work that&#8217;s already happening. Love that you reverse-engineered Figma so teams can edit the output before posting \u2014 that control is key. Congrats on the launch! Any plans to extend this to motion graphics or short video down the line?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#7<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/D65V7XL2EQS53Y\" class=\"app-title\">MockPilot<\/a><\/p>\n<div class=\"one-liner\">Turn live websites into editable mockups<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">131<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>MockPilot\u5c06\u4efb\u610f\u5728\u7ebf\u7f51\u9875\u4e00\u952e\u8f6c\u5316\u4e3a\u53ef\u7f16\u8f91\u7684\u684c\u9762\u7aefMockup\uff0c\u8ba9\u4ea7\u54c1\u7ecf\u7406\u3001\u8bbe\u8ba1\u5e08\u7b49\u975e\u6280\u672f\u4eba\u5458\u901a\u8fc7\u81ea\u7136\u8bed\u8a00\u5c31\u80fd\u5feb\u901f\u4ea7\u51fa\u9ad8\u4fdd\u771f\u539f\u578b\uff0c\u89e3\u51b3\u56e2\u961f\u6c9f\u901a\u4e2d\u201c\u60f3\u6cd5\u8bf4\u4e0d\u6e05\u3001\u5f00\u53d1\u731c\u4e0d\u900f\u201d\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b1ef623e-6c96-47ab-8a31-017f4858cacf.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f1381831-db99-4df6-8990-077c3ca27ce7.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/34d39f94-97ac-4a71-b529-3b085445a611.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/faddceec-f146-4782-9056-796ccf68e5b1.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/5cf34558-d27d-4811-9d27-f5ff06b62f87.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a84e6888-715e-4a6f-b3de-d0f0dd7ec778.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/2fa4d8c7-5745-4b65-8a7f-d34b36364081.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Developer Tools<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">GitHub<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u7f51\u9875\u8f6cMockup<\/span><br \/>\n            <span class=\"tag\">AI\u7f16\u8f91<\/span><br \/>\n            <span class=\"tag\">\u8bbe\u8ba1\u8d44\u4ea7\u63d0\u53d6<\/span><br \/>\n            <span class=\"tag\">\u4ea7\u54c1\u7ecf\u7406\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u524d\u7aef\u539f\u578b<\/span><br \/>\n            <span class=\"tag\">\u5f00\u6e90<\/span><br \/>\n            <span class=\"tag\">\u672c\u5730\u5316<\/span><br \/>\n            <span class=\"tag\">Electron<\/span><br \/>\n            <span class=\"tag\">\u754c\u9762\u8bbe\u8ba1<\/span><br \/>\n            <span class=\"tag\">\u56e2\u961f\u534f\u4f5c<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u4e3b\u8981\u5173\u6ce8\uff1a1\uff09\u5bf9\u61d2\u52a0\u8f7d\u3001\u5ba2\u6237\u7aef\u6e32\u67d3\u9875\u9762\u548c\u52a8\u753b\u7684\u6355\u83b7\u5b8c\u6574\u6027\u53caDOM\u7a33\u5b9a\u6027\u7684\u5904\u7406\uff1b2\uff09AI\u5728\u521b\u4f5c\u65b0\u7ec4\u4ef6\u65f6\u662f\u5426\u4e25\u683c\u590d\u7528\u5df2\u63d0\u53d6\u7684\u8bbe\u8ba1\u8d44\u4ea7\uff0c\u800c\u975e\u968f\u610f\u751f\u6210\uff1b3\uff09\u5bfc\u51faHTML\u7684\u8bed\u4e49\u5316\u548c\u54cd\u5e94\u5f0f\u8868\u73b0\uff1b4\uff09\u4e0eFigma\u7b49\u7ade\u54c1\u7684\u5dee\u5f02\uff0c\u4ee5\u53ca\u662f\u5426\u652f\u6301\u6ce8\u91ca\u3001Diff\u89c6\u56fe\u3001Figama\u5bfc\u51fa\u7b49\u5f00\u53d1\u8005\u4ea4\u63a5\u529f\u80fd\uff1b5\uff09\u6838\u5fc3\u4fe1\u4efb\u70b9\u5728\u4e8e\u672c\u5730\u79bb\u7ebf\u8fd0\u884c\u548c\u5f00\u6e90\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                MockPilot\u7cbe\u51c6\u5207\u4e2d\u4e86\u4ece\u201c\u60f3\u6cd5\u201d\u5230\u201c\u53ef\u4ea4\u4ed8\u539f\u578b\u201d\u4e4b\u95f4\u4e00\u4e2a\u957f\u671f\u88ab\u4f4e\u4f30\u7684\u7f1d\u9699\u3002\u5b83\u7684\u521b\u65b0\u4e0d\u5728\u4e8eAI\u751f\u6210\u80fd\u529b\u672c\u8eab\uff0c\u800c\u5728\u4e8e\u628a\u751f\u6210\u951a\u5b9a\u5728\u201c\u5df2\u6709\u7f51\u9875\u8bbe\u8ba1\u7cfb\u7edf\u201d\u4e4b\u4e0a\uff1a\u5148\u62c6\u89e3\u771f\u5b9e\u4ee3\u7801\u4e2d\u7684\u89c6\u89c9\u8d44\u4ea7\uff0c\u518d\u5728\u6b64\u6846\u67b6\u5185\u6267\u884c\u81ea\u7136\u8bed\u8a00\u6307\u4ee4\u3002\u8fd9\u89e3\u51b3\u4e86AI\u8bbe\u8ba1\u5de5\u5177\u6700\u5934\u75db\u7684\u201c\u98ce\u683c\u778e\u7f16\u201d\u95ee\u9898\u2014\u2014\u751f\u6210\u7684\u7ed3\u679c\u5929\u7136\u5c5e\u4e8e\u4f60\u7684\u54c1\u724c\u4f53\u7cfb\uff0c\u800c\u975e\u4e00\u5f20\u9700\u8981\u63a8\u7ffb\u91cd\u505a\u7684\u201c\u6f02\u4eae\u5e9f\u7eb8\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u5176\u4ef7\u503c\u76ee\u524d\u88ab\u201c\u539f\u578b\u201d\u4e8c\u5b57\u5c40\u9650\u4e86\u3002\u5bf9\u4e8ePM\uff0c\u5b83\u6bd4\u622a\u56fe+\u7bad\u5934\u8fdb\u4e86\u4e00\u5927\u6b65\uff0c\u4f46\u8ddd\u771f\u6b63\u7684\u5f00\u53d1\u4ea4\u4ed8\u7269\u8fd8\u6709\u8ddd\u79bb\uff1a\u53ea\u8981\u5bfc\u51fa\u7684\u662f\u201c\u7ad9\u4e0d\u4f4f\u811a\u201d\u7684\u9759\u6001HTML\uff0c\u5f00\u53d1\u8005\u4ecd\u9700\u8981\u624b\u52a8\u91cd\u6784\u4e3a\u771f\u5b9e\u4ee3\u7801\u3002\u8bc4\u8bba\u4e2d\u5df2\u6709\u7528\u6237\u8ffd\u95ee\u8bed\u4e49\u5316\u6807\u8bb0\u548c\u54cd\u5e94\u5f0f\u590d\u73b0\uff0c\u8fd9\u6b63\u662f\u5de5\u5177\u4ece\u201c\u6f14\u793a\u73a9\u5177\u201d\u5347\u7ea7\u4e3a\u201c\u5de5\u4f5c\u6d41\u8282\u70b9\u201d\u7684\u95e8\u69db\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u53e6\u4e00\u4e2a\u503c\u5f97\u8b66\u60d5\u7684\u4fe1\u53f7\u662fFigma\u6b63\u5e03\u5c40\u7c7b\u4f3c\u80fd\u529b\u3002\u5dee\u8ddd\u5728\u4e8e\uff0cFigma\u80fd\u76f4\u63a5\u8f93\u51fa\u8bbe\u8ba1\u7a3f\u4f9b\u8bbe\u8ba1\u5e08\u7cbe\u8c03\uff0c\u800cMockPilot\u7684\u201c\u65e0Figma\u201d\u8def\u7ebf\u610f\u5473\u7740\u8df3\u8fc7\u4e13\u4e1a\u73af\u8282\uff0c\u8fd9\u65e2\u662f\u673a\u4f1a\u4e5f\u662f\u5929\u82b1\u677f\u2014\u2014\u5b83\u66f4\u9002\u5408\u201c\u975e\u8bbe\u8ba1\u5e08\u7528\u5feb\u901f\u9a8c\u8bc1\u60f3\u6cd5\u201d\uff0c\u800c\u975e\u201c\u56e2\u961f\u8bbe\u8ba1\u4ea4\u4ed8\u6d41\u6c34\u7ebf\u201d\u3002\u5982\u679c\u5b83\u65e0\u6cd5\u5728AI\u8d44\u4ea7\u903b\u8f91\u590d\u7528\u548c\u5f00\u53d1\u4ea4\u63a5\uff08\u5982\u751f\u6210React\u7ec4\u4ef6\u4ee3\u7801\u3001Diff\u89c6\u56fe\uff09\u4e0a\u62c9\u5f00\u5b9e\u8d28\u6027\u5dee\u8ddd\uff0c\u5c31\u53ef\u80fd\u6ca6\u4e3a\u7cbe\u81f4\u4f46\u5c0f\u4f17\u7684\u201c\u539f\u578b\u751f\u6210\u5668\u201d\uff0c\u800c\u4e0d\u662f\u4e00\u4e2a\u6539\u53d8\u56e2\u961f\u534f\u4f5c\u65b9\u5f0f\u7684\u5e73\u53f0\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">MockPilot<\/span>\n                <\/div>\n<div class=\"comment-content\">MockPilot turns any live webpage into an editable mockup on your desktop. Use natural language &#8211; no design or coding skills needed. \ud83d\udcf8 Capture full pages or single components from any URL \ud83c\udfa8 Auto-extracts typography, colors, components &#038; icons into a reusable asset library \ud83d\udcac Edit in plain English \u2014 just tell the AI what to change, and it uses your assets to keep everything on-brand \ud83d\udce6 Export as clean, standalone HTML Free &#038; open source. macOS + Windows.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hey Product Hunt \ud83d\udc4b<\/p>\n<p>I built MockPilot for a very specific frustration I kept seeing on every team I&#8217;ve worked on: a PM (or designer, or support lead, or founder) has a clear idea for a feature or a tweak to an existing screen &#8211; but no fast way to show it. So they write a paragraph, drop in a screenshot with arrows, and hope the developer interprets it the way they meant. Half the time, they don&#8217;t.<\/p>\n<p>MockPilot fixes that. You point it at any URL &#8211; your own product, a competitor, anywhere &#8211; and it captures the page (or just one component) as a fully editable mockup. While it captures, it pulls the site&#8217;s design system apart into a reusable asset library: typography, colors, components, icons.<\/p>\n<p>Then you just describe what you want in plain English. &#8220;Add a second pricing tier between these two&#8221;, &#8220;reuse the same card style&#8221;, &#8220;Replace this empty state with a CTA to import data&#8221;, &#8220;Make the nav sticky and add a search field.&#8221; The AI does it, on-brand, using the assets it already extracted. No Figma. No CSS. No design background needed.<\/p>\n<p>When you&#8217;re happy, hand off a clean HTML export, deploy it, or just create a screenshot and send it to your developer. Suddenly &#8220;here&#8217;s what I want&#8221; is a real artifact instead of a paragraph and a prayer.<\/p>\n<p>It&#8217;s an Electron app, fully local (captures never leave your machine), open source, and free. macOS and Windows builds are on the GitHub releases page.<\/p>\n<p> A few things I&#8217;d love your feedback on:<\/p>\n<p>1. PMs especially &#8211; what does your current &#8220;spec a UI change&#8221; workflow look like, and where does MockPilot fall short of replacing it?<br \/>\n2. What would make handoff to developers smoother &#8211; annotations? A diff view? Figma export?<br \/>\n3. Which sites break the capture? Bug reports very welcome.<\/p>\n<p>Happy to answer anything &#8211; and thanks for checking it out! \ud83d\ude80<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Good one! The thing I&#8217;d want to stress-test is sites that render client-side or lazy-load on scroll. Does the capture wait for the DOM to settle? Do you end up grabbing half-loaded components?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@artstavenka1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@artstavenka1<\/a>&nbsp;so there are two parts to the way we handle this: The first part is the <strong>Capture Browser<\/strong>. That&#8217;s where you interact with the web page before you capture a static version of it. At that point you can scroll down as far as you want to load whatever you want and then when you click <em>capture<\/em> it goes to the second part which is the crop tool. This tool can be used to further extend or contract the height of the page, as well as select which part of the page to crop. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The local capture point is the part I&#8217;d trust most here. In PM-to-dev handoff, the hard bit is usually keeping the mock close to the existing design system instead of generating a pretty but impossible screen. Curious how strict the asset reuse is \u2014 if I ask for a new component, does it prefer composing from captured tokens\/components before inventing new CSS?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>&#8220;A paragraph and a prayer&#8221; perfectly captures the PM-to-dev handoff pain \u2014 turning a live page into an editable mockup is a great fix. Love that it&#8217;s local-first and open source too. Congrats on the launch! Are you thinking about adding annotations or a diff view to make handoff even cleaner?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This sounds super interesting especially grabbing a sites design features, colours, fonts, icons etc&#8230; sounds like a much easier way than sending over a complete css file<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The &#8220;no Figma needed&#8221; angle is smart \u2013 designers will use it anyway, but this opens it up to everyone else. How does it handle sites with heavy animations or scroll effects?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vlad_zabavskiy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vlad_zabavskiy<\/a> we generate a static capture of the website. So if you have things like scroll animations, you can scroll to a certain point of the animation in the <strong>Capture Browser<\/strong> and then when you click <em>capture<\/em>, it&#8217;ll capture that point in time.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The live-site-to-editable-mockup flow is a great bridge for non-designers and fast product iteration. Auto-extracting typography, colors, and components is the practical bit. How clean is the exported HTML on complex responsive pages?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;we capture the HTML and CSS pretty much as is. We strip away the noise by removing things like redundant attributes or empty elements or invisible elements and so on. So it&#8217;s as clean as the original website or slightly cleaner.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The PM-to-dev handoff use case is very real. A quick editable mockup from the actual live page would remove a lot of vague screenshot feedback and make small UI changes much easier to explain.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Bad and good news:<\/p>\n<\/p>\n<p>Figma is releasing their chrome extension (have you heard?) which seems to do similar as MockPilot, except just exports to Figma.<\/p>\n<\/p>\n<p>Bad news: competitor. <\/p>\n<p>Good news: validation??<\/p>\n<\/p>\n<p>Anyways, congrats on the launch \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@peterz_shu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@peterz_shu<\/a>&nbsp;Interesting! I haven&#8217;t heard about that \ud83d\ude42 I&#8217;ll look into it<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This look good especially for demo presentation, I have a question, can&#8217;t  it be developed fully without the hassle of going through all these processes ? <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@daniel_oyetunde\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@daniel_oyetunde<\/a>&nbsp;by fully developed, you mean an actual website, not just the HTML and CSS? That means different things to different users. The purpose of this tool is to have designers and PMs and maybe developers to create a visual representation of the features that they would like to implement. The nice thing is that AI tools like Copilot and Cloud Code do a very good job converting HTML and CSS to actual React code or other frameworks.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The asset library extraction is the part that grabs me, pulling a live site&#8217;s typography and colors into something reusable so edits stay on brand is really handy. Curious whether the exported HTML comes out as semantic markup or mostly positioned divs. Congrats on shipping.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@i_sanjay_gautam\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@i_sanjay_gautam<\/a>&nbsp;thank you. I plan to expand this feature to let users grab components from other websites or from component banks and add them to the assets library so they can integrate them into the mockup.<\/p>\n<p>As for the exported HTML, it&#8217;s as semantic as the original website is. We don&#8217;t change the original HTML other than stripping out redundant attributes (redundant in terms of visual appearance) and JS. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#8<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/3JHSMSEQPY6EEK\" class=\"app-title\">Sulsaly<\/a><\/p>\n<div class=\"one-liner\">#1 Agentic AI sales leads &#038;outreach platform for MENA Region<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">123<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Sulsaly\u662f\u4e13\u4e3a\u4e2d\u4e1c\u548c\u5317\u975e\uff08MENA\uff09\u5730\u533a\u9500\u552e\u56e2\u961f\u6253\u9020\u7684AI\u9500\u552e\u60c5\u62a5\u4e0e\u81ea\u52a8\u63a8\u5e7f\u5e73\u53f0\uff0c\u901a\u8fc750M+\u9a8c\u8bc1\u8054\u7cfb\u4eba\u3001WhatsApp\/LinkedIn\/\u90ae\u4ef6\u4e09\u5408\u4e00\u81ea\u52a8\u89e6\u8fbe\u53ca\u65b9\u8a00\u7ea7\u963f\u62c9\u4f2f\u8bedAI\u751f\u6210\uff0c\u89e3\u51b3\u8be5\u5730\u533a\u9500\u552e\u6570\u636e\u7f3a\u5931\u3001\u6c9f\u901a\u6e20\u9053\u9519\u914d\u3001\u8bed\u8a00\u652f\u6301\u8584\u5f31\u7684\u6838\u5fc3\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/7cdcec68-0947-4d72-a17d-853e31fad12a.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/eb2e7c90-241a-4971-a598-f324c4dd3a75.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/5ce4f297-3cb0-4514-98a1-caae6fd34704.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/c11ef85f-8003-48f9-8717-1cab26b9e226.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/790d5bd0-5c86-4852-a781-bf3c307ddee3.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/ac1a12cd-950f-404b-b7e6-c44817ed00aa.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/cceb1968-9003-41e9-b204-df27f9adba0c.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/ef1a8f37-df02-4fa2-b7b7-224c1efb73ab.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/9bcdc3cf-b347-4b57-81ab-7cdb903c9561.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/133f13ba-d44b-453b-9f0d-21b9af8a2a15.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/IPrnZWIc67g\"><source src=\"https:\/\/youtu.be\/IPrnZWIc67g\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Chrome Extensions<\/span><br \/>\n            <span class=\"tag\">Sales<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">CRM<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u9500\u552e\u5e73\u53f0<\/span><br \/>\n            <span class=\"tag\">MENA\u5730\u533a<\/span><br \/>\n            <span class=\"tag\">\u9500\u552e\u60c5\u62a5<\/span><br \/>\n            <span class=\"tag\">WhatsApp\u81ea\u52a8\u5316<\/span><br \/>\n            <span class=\"tag\">LinkedIn\u63a8\u5e7f<\/span><br \/>\n            <span class=\"tag\">\u963f\u62c9\u4f2f\u8bedAI<\/span><br \/>\n            <span class=\"tag\">B2B\u8054\u7cfb\u4eba\u6570\u636e\u5e93<\/span><br \/>\n            <span class=\"tag\">\u9500\u552e\u5916\u8054\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u793e\u4ea4\u9500\u552e<\/span><br \/>\n            <span class=\"tag\">\u533a\u57df\u5316SaaS<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u540cMENA\u533a\u57df\u805a\u7126\u7b56\u7565\u7684\u4ef7\u503c\uff0c\u79f0\u8d5eWhatsApp\u96c6\u6210\u548c\u963f\u62c9\u4f2f\u8bed\u65b9\u8a00\u610f\u8bc6\u3002\u6838\u5fc3\u7591\u95ee\u96c6\u4e2d\u5728\u6570\u636e\u9a8c\u8bc1\u4e0e\u66f4\u65b0\u673a\u5236\uff0c\u5982\u4f55\u4fdd\u6301\u8054\u7cfb\u4eba\u53f7\u7801\u4e0d\u8fc7\u65f6\uff0c\u4ee5\u53caAI\u751f\u6210\u963f\u62c9\u4f2f\u8bed\u6d88\u606f\u7684\u56de\u590d\u7387\u548c\u6587\u5316\u5339\u914d\u5ea6\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Sulsaly\u7684\u806a\u660e\u4e4b\u5904\u5728\u4e8e\uff0c\u5b83\u6ca1\u6709\u9009\u62e9\u5728\u7ea2\u6d77\u5e02\u573a\u4e0eApollo\u3001ZoomInfo\u6b63\u9762\u786c\u521a\uff0c\u800c\u662f\u7cbe\u51c6\u5207\u5165\u4e86\u201c\u5927\u5382\u4e0d\u5c51\u505a\u3001\u5c0f\u5382\u505a\u4e0d\u4e86\u201d\u7684MENA\u5e02\u573a\u5229\u57fa\u3002\u8fd9\u4e2a\u7b56\u7565\u7684\u5546\u4e1a\u903b\u8f91\u975e\u5e38\u6210\u7acb\uff1a\u5728\u6c99\u7279\u548c\u963f\u8054\u914b\uff0cWhatsApp\u624d\u662f\u5546\u52a1\u5e38\u6001\uff0c\u800c\u975eEmail\uff1b\u963f\u62c9\u4f2f\u8bed\u7684\u65b9\u8a00\u5dee\u5f02\uff08\u6d77\u6e7e\/\u9ece\u51e1\u7279\/\u57c3\u53ca\uff09\u4e0d\u662f\u9526\u4e0a\u6dfb\u82b1\uff0c\u800c\u662f\u80fd\u5426\u6210\u4ea4\u7684\u95e8\u69db\u3002\u4ea7\u54c1\u63cf\u8ff0\u4e2d\u201c5\u500d\u66f4\u5feb\u6210\u4ea4\u201d\u7684\u5ba3\u79f0\u9700\u8981\u6570\u636e\u652f\u6491\uff0c\u4f46\u4ece\u7528\u6237\u53cd\u9988\u770b\uff0c\u6700\u5173\u952e\u7684\u6311\u6218\u5e76\u4e0d\u5728\u4e8e\u529f\u80fd\u591a\u70ab\uff0c\u800c\u5728\u4e8e\u6570\u636e\u672c\u8eab\u7684\u8d28\u91cf\u548c\u65f6\u6548\u6027\u3002\u8bc4\u8bba\u4e2d\u591a\u6b21\u51fa\u73b0\u7684\u201c\u5982\u4f55\u9a8c\u8bc1\u8054\u7cfb\u4eba\u201d\u201c\u5982\u4f55\u907f\u514d\u8fc7\u65f6\u53f7\u7801\u201d\u662f\u771f\u5b9e\u7528\u6237\u7684\u8b66\u89c9\u2014\u2014\u5bf9\u4e8e\u9500\u552e\u5de5\u5177\uff0c\u6570\u636e\u4e00\u65e6\u4e0d\u51c6\u786e\uff0c\u6574\u4e2a\u81ea\u52a8\u5316\u6d41\u7a0b\u5c31\u662f\u7a7a\u8f6c\u3002Sulsaly\u76ee\u524d\u9760\u201c\u533a\u57df\u4e13\u6ce8\u201d\u8d62\u5f97\u4e86\u65e9\u671f\u4fe1\u4efb\uff0c\u4f46\u8981\u771f\u6b63\u89c4\u6a21\u5316\uff0c\u5fc5\u987b\u5728\u6570\u636e\u5237\u65b0\u673a\u5236\u4e0a\u7ed9\u51fa\u900f\u660e\u4e14\u53ef\u9760\u7684\u65b9\u6848\uff0c\u5426\u5219\u533a\u57df\u4f18\u52bf\u5f88\u5feb\u4f1a\u53d8\u6210\u533a\u57df\u9677\u9631\u3002\u53e6\u4e00\u70b9\u503c\u5f97\u6ce8\u610f\u662f\u5b9a\u4ef7\u2014\u2014\u5982\u679c\u6700\u7ec8\u4ea7\u54c1\u5b9a\u4ef7\u5bf9\u6807Apollo\u7b49\u5de5\u5177\uff0c\u4f46\u5728\u6570\u636e\u91cf\u548c\u5168\u7403\u5316\u80fd\u529b\u4e0a\u660e\u663e\u7f29\u6c34\uff0c\u53ef\u80fd\u4f1a\u8ba9\u76ee\u6807\u5ba2\u7fa4\u4ea7\u751f\u201c\u6027\u4ef7\u6bd4\u5012\u6302\u201d\u7684\u611f\u89c9\u3002\u603b\u4f53\u800c\u8a00\uff0cSulsaly\u8d70\u4e86\u4e00\u6761\u9ad8\u7c98\u6027\u3001\u9ad8\u7cbe\u51c6\u5ea6\u7684\u7a84\u8def\uff0c\u65b9\u5411\u5bf9\u4e86\uff0c\u4f46\u6267\u884c\u548c\u4fe1\u4efb\u5efa\u8bbe\u624d\u662f\u540e\u52b2\u6240\u5728\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Sulsaly<\/span>\n                <\/div>\n<div class=\"comment-content\">Sulsaly is MENA&#8217;s first Agentic AI sales intelligence platform. Find verified decision-makers instantly, automate personalized outreach across LinkedIn, WhatsApp and Email. Close deals 5x faster. 50M+ verified B2B contacts across the Arab world. Built for sales teams in UAE, Saudi Arabia, Egypt, Jordan and the Middle East. \u0623\u0648\u0644 \u0645\u0646\u0635\u0629 \u0630\u0643\u0627\u0621 \u0627\u0635\u0637\u0646\u0627\u0639\u064a \u0644\u0644\u0645\u0628\u064a\u0639\u0627\u062a \u0641\u064a \u0627\u0644\u0634\u0631\u0642 \u0627\u0644\u0623\u0648\u0633\u0637. \u0627\u0643\u062a\u0634\u0641 \u0635\u0627\u0646\u0639\u064a \u0627\u0644\u0642\u0631\u0627\u0631\u060c \u0623\u062a\u0645\u062a\u0629 \u0627\u0644\u062a\u0648\u0627\u0635\u0644 \u0639\u0628\u0631 \u0648\u0627\u062a\u0633\u0627\u0628 \u0648\u0644\u064a\u0646\u0643\u062f\u0625\u0646 \u0648\u0627\u0644\u0628\u0631\u064a\u062f \u0627\u0644\u0625\u0644\u0643\u062a\u0631\u0648\u0646\u064a\u060c \u0648\u0623\u063a\u0644\u0642 \u0635\u0641\u0642\u0627\u062a\u0643 \u0623\u0633\u0631\u0639 \u0628\u0640 5 \u0645\u0631\u0627\u062a. 50M+ \u062c\u0647\u0629 \u0627\u062a\u0635\u0627\u0644 \u0645\u0648\u062b\u0642\u0629.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hey Product Hunt! Excited to share Sulsaly with you today.<\/p>\n<p>The idea came from a frustration I kept hearing from founders and sales teams across the Arab world: the tools everyone recommends ( Apollo, ZoomInfo, Lusha ) were built for the US and European markets. They have almost no coverage for MENA contacts, don&#8217;t support Arabic, and completely ignore WhatsApp, which is how business actually gets done in the Gulf, Levant, and Egypt.<\/p>\n<p>The problem is simple: a sales rep in Riyadh or Cairo has no systematic way to find decision-makers, get their WhatsApp numbers, and reach out in Arabic at scale. Everyone is either buying expensive Western tools that don&#8217;t work here, or doing everything manually.<\/p>\n<p>Sulsaly fixes this in 5 clicks: find your ideal prospect in MENA, get their verified WhatsApp and LinkedIn, generate a personalised Arabic message with AI, and send it, all from one platform.<\/p>\n<p>We built it specifically for the Arab world: Arabic UI, Arabic AI-generated messages, Gulf\/Levantine\/Egyptian dialect awareness, and a contact database that actually covers the region.<\/p>\n<p>Would love to hear from anyone doing sales in MENA, what&#8217;s your biggest challenge right now?<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>6<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is a great product, i particularly love the UI and UX, i found it easy to use and to set things up fast<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>building specifically for MENA instead of trying to be &#8220;global&#8221; is the right move. every sales tool I&#8217;ve used is built for the US market first and everywhere else is an afterthought. the WhatsApp integration is smart too since that&#8217;s actually how business gets done in most of the world outside the US. Arabic dialect awareness across Gulf, Levantine, and Egyptian is a nice touch<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch!  It&#8217;s interesting to see a sales platform built specifically for MENA instead of treating the region as an afterthought.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt! Excited to share Sulsaly with you today.  The idea came from a frustration I kept hearing from founders and sales teams across the Arab world: the tools everyone recommends ( Apollo, ZoomInfo, Lusha ) were built for the US and European markets. They have almost no coverage for MENA contacts, don&#8217;t support Arabic, and completely ignore WhatsApp, which is how business actually gets done in the Gulf, Levant, and Egypt.  The problem is simple: a sales rep in Riyadh or Cairo has no systematic way to find decision-makers, get their WhatsApp numbers, and reach out in Arabic at scale. Everyone is either buying expensive Western tools that don&#8217;t work here, or doing everything manually.  Sulsaly fixes this in 5 clicks: find your ideal prospect in MENA, get their verified WhatsApp and LinkedIn, generate a personalised Arabic message with AI, and send it, all from one platform.  We built it specifically for the Arab world: Arabic UI, Arabic AI-generated messages, Gulf\/Levantine\/Egyptian dialect awareness, and a contact database that actually covers the region.  Would love to hear from anyone doing sales in MENA, what&#8217;s your biggest challenge right now?<\/p>\n<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Building MENA-first instead of treating the region as an afterthought is a smart wedge \u2014 and leaning into WhatsApp + Arabic dialect awareness is exactly what Western tools miss. Congrats on the launch! How do you keep the contact database fresh and avoid stale numbers?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>What I&#8217;m curious about is the AI-generated Arabic messaging. Getting the language right is one thing, but getting the tone, dialect, and cultural nuance right is much harder. Have you seen strong reply rates from actual buyers?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>How are you verifying decision makers and keeping numbers up to date without burning people with stale contact data?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p> Most sales intelligence platforms claim global coverage, but MENA has always felt underserved. If Sulsaly can consistantly  deliver high-quality decision-maker data in Saudi Arabia and Egypt, that alone could be a huge advantage. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The regional focus is smart. Sales tooling often underestimates local channels and data quality, especially WhatsApp\/LinkedIn workflows in MENA. How do you keep verification fresh across the contact database?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#9<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/YWE5HSZ4L4O2HI\" class=\"app-title\">Reignat<\/a><\/p>\n<div class=\"one-liner\">Privacy-friendly web analytics platform built for makers<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">120<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Reignat\u662f\u4e00\u6b3e\u4e13\u4e3a\u72ec\u7acb\u5f00\u53d1\u8005\u4e0e\u521d\u521b\u56e2\u961f\u8bbe\u8ba1\u7684\u9690\u79c1\u53cb\u597d\u578b\u7f51\u7ad9\u5206\u6790\u5de5\u5177\uff0c\u901a\u8fc7\u7b80\u6d01\u5b9e\u65f6\u770b\u677f\u3001\u6f0f\u6597\u8ffd\u8e2a\u548cAI\u6d1e\u5bdf\uff0c\u89e3\u51b3\u4f20\u7edf\u5206\u6790\u5de5\u5177\uff08\u5982GA\uff09\u8fc7\u4e8e\u590d\u6742\u3001\u6602\u8d35\u4e14\u6570\u636e\u5197\u4f59\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/745924f4-64e2-435b-82b2-4cf12aef1400.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/c4ea0985-8a4e-49b2-a7ff-86c60e385292.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f4ad0a2e-7db0-4e28-9271-0d30f23f8687.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/ed693993-c49f-4720-b0b6-d2d3d4158405.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/1492a13b-9587-42c7-8fa8-c790c29cdf18.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">API<\/span><br \/>\n            <span class=\"tag\">Analytics<\/span><br \/>\n            <span class=\"tag\">SaaS<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u9690\u79c1\u5206\u6790<\/span><br \/>\n            <span class=\"tag\">\u7f51\u7ad9\u6570\u636e<\/span><br \/>\n            <span class=\"tag\">\u72ec\u7acb\u5f00\u53d1\u8005<\/span><br \/>\n            <span class=\"tag\">\u5b9e\u65f6\u8ffd\u8e2a<\/span><br \/>\n            <span class=\"tag\">AI\u6d1e\u5bdf<\/span><br \/>\n            <span class=\"tag\">\u6f0f\u6597\u5206\u6790<\/span><br \/>\n            <span class=\"tag\">\u7528\u6237\u65c5\u7a0b<\/span><br \/>\n            <span class=\"tag\">\u8f7b\u91cf\u811a\u672c<\/span><br \/>\n            <span class=\"tag\">GDPR\u5408\u89c4<\/span><br \/>\n            <span class=\"tag\">\u66ff\u4ee3GA<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u5176\u201c\u9690\u79c1\u53cb\u597d+\u8f7b\u91cf\u201d\u5b9a\u4f4d\uff0c\u8ba4\u4e3a\u9002\u5408\u66ff\u4ee3GA\u3002\u4e3b\u8981\u7591\u95ee\u96c6\u4e2d\u5728\uff1aAI\u6d1e\u5bdf\u4e0e\u539f\u59cb\u6570\u636e\u7684\u900f\u660e\u5ea6\u5982\u4f55\u5e73\u8861\uff1b\u811a\u672c\u8d1f\u8f7d\u53ca\u5bf9Next.js App Router\u7684\u517c\u5bb9\u6027\uff1b\u6570\u636e\u6258\u7ba1\u4e0eGDPR\u5408\u89c4\uff08\u65e0\u9700Cookie\u6a2a\u5e45\uff09\u3002\u90e8\u5206\u8bc4\u8bba\u6307\u51fa\u54c1\u724c\u540d\u201cReignat\u201d\u4e0e\u5176\u201c\u7b80\u6d01\u201d\u5b9a\u4f4d\u5b58\u5728\u8c03\u6027\u51b2\u7a81\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Reignat\u5207\u5165\u4e86\u4e00\u4e2a\u770b\u4f3c\u62e5\u6324\u5374\u4ecd\u6709\u673a\u4f1a\u7684\u8d5b\u9053\uff1a**\u4e3a\u201c\u7b80\u6d01\u201d\u800c\u751f\u7684\u9690\u79c1\u5206\u6790\u5de5\u5177**\u3002\u5176\u6838\u5fc3\u5356\u70b9\u5e76\u975e\u6280\u672f\u72ec\u521b\u6027\uff0c\u800c\u662f\u5bf9\u72ec\u7acb\u5f00\u53d1\u8005\u75db\u70b9\u7684\u7cbe\u51c6\u62ff\u634f\u2014\u2014\u538c\u5026\u4e86GA\u7684\u81c3\u80bf\u3001Plausible\/Fathom\u7b49\u7ade\u54c1\u867d\u597d\u5374\u4ecd\u9700\u4ed8\u8d39\u8ba2\u9605\u3002120\u7968\u7684PH\u6210\u7ee9\u8bc1\u660e\u4e86\u8fd9\u4e00\u75db\u70b9\u7684\u5e7f\u6cdb\u6027\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u4ea7\u54c1\u7684\u771f\u6b63\u4ef7\u503c\u53d6\u51b3\u4e8e\u201cAI\u6d1e\u5bdf\u201d\u7684\u6df1\u5ea6\u3002\u76ee\u524d\u770b\u6765\uff0c\u5176AI\u66f4\u591a\u662f\u8d8b\u52bf\u6458\u8981\u4e0e\u673a\u4f1a\u53d1\u73b0\uff0c\u5c1a\u672a\u6784\u5efa\u51fa\u201c\u4ece\u6570\u636e\u5230\u5efa\u8bae\u201d\u7684\u95ed\u73af\u3002\u8bc4\u8bba\u4e2d\u201c\u5982\u4f55\u5e73\u8861AI\u4e0e\u539f\u59cb\u6570\u636e\u900f\u660e\u5ea6\u201d\u7684\u53cd\u590d\u8ffd\u95ee\uff0c\u66b4\u9732\u4e86\u591a\u6570\u8f7b\u91cf\u5206\u6790\u5de5\u5177\u7684\u8f6f\u808b\uff1a\u4e00\u65e6AI\u5224\u65ad\u5931\u8bef\uff08\u5982\u8bef\u8bfb\u6d41\u91cf\u6765\u6e90\u4e0b\u964d\u539f\u56e0\uff09\uff0c\u7528\u6237\u56e0\u7f3a\u4e4f\u5386\u53f2\u6570\u636e\u6216\u590d\u6742\u7b5b\u9009\u80fd\u529b\u800c\u96be\u4ee5\u81ea\u8bc1\u3002\u82e5\u53ea\u662f\u5c06\u201c\u9875\u9762\u6d4f\u89c8\u91cf\u589e20%\u201d\u5305\u88c5\u6210AI\u603b\u7ed3\uff0c\u4ef7\u503c\u6709\u9650\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u66f4\u5927\u7684\u9690\u60a3\u5728\u4e8e**\u62a4\u57ce\u6cb3**\u3002\u8fd9\u7c7b\u5de5\u5177\u7684\u6280\u672f\u95e8\u69db\u6781\u4f4e\uff0c\u6838\u5fc3\u5dee\u5f02\u5728\u4e8e\u6570\u636e\u9690\u79c1\u5408\u89c4\u4e0e\u7528\u6237\u4f53\u9a8c\u7684\u5fae\u64cd\u3002Reignat\u7684\u8f7b\u91cf\u811a\u672c\u548c\u65e0\u9700Cookie\u7684\u8bbe\u8ba1\u662f\u52a0\u5206\u9879\uff0c\u4f46\u4e00\u65e6\u7ade\u54c1\uff08\u5982Umami\u7684\u5f00\u6e90\u9879\u76ee\uff09\u540c\u6837\u5f3a\u5316AI\u7279\u6027\uff0c\u7528\u6237\u8fc1\u79fb\u6210\u672c\u51e0\u4e4e\u4e3a\u96f6\u3002\u54c1\u724c\u540d\u201cReignat\u201d\u4e0e\u201cReign\u201d\uff08\u7edf\u6cbb\uff09\u7684\u5f3a\u5173\u8054\uff0c\u4e0e\u201c\u72ec\u7acb\u3001\u8f7b\u91cf\u3001\u4e0d\u6536\u96c6\u201d\u7684\u5b9a\u4f4d\u5f62\u6210\u5fae\u5999\u8fdd\u548c\uff0c\u8fd9\u6216\u8bb8\u662f\u5c0f\u56e2\u961f\u5728\u54c1\u724c\u89c6\u89c9\u4e0a\u5bb9\u6613\u5ffd\u89c6\u7684\u7ec6\u8282\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u603b\u7684\u6765\u8bf4\uff0cReignat\u662f\u4e00\u6b3e\u5408\u683c\u7684\u201c\u5de5\u5177\u578b\u4ea7\u54c1\u201d\uff0c\u4f46\u82e5\u60f3\u6210\u4e3a\u72ec\u7acb\u5f00\u53d1\u8005\u7684\u201c\u9ed8\u8ba4\u9009\u62e9\u201d\uff0c\u9700\u5728**AI\u6d1e\u5bdf\u7684\u4fe1\u4efb\u673a\u5236**\uff08\u5982\u53ef\u4e0b\u94bb\u81f3\u539f\u59cb\u8f68\u8ff9\uff09\u548c**\u793e\u533a\u53e3\u7891**\u4e0a\u5f62\u6210\u66f4\u6df1\u7684\u7ed1\u5b9a\u3002\u5426\u5219\uff0c\u5b83\u5f88\u53ef\u80fd\u53ea\u662f\u4e0b\u4e00\u4e2a\u88ab\u201c\u66f4\u7b80\u6d01\u3001\u66f4\u4fbf\u5b9c\u201d\u7684\u540e\u6765\u8005\u66ff\u4ee3\u7684\u8fc7\u5ba2\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Reignat<\/span>\n                <\/div>\n<div class=\"comment-content\">Reignat is a privacy-friendly web analytics platform built for founders, startups, and indie makers who want clear insights without the complexity of traditional analytics tools. Track visitors, pageviews, traffic sources, devices, locations, funnels, and user journeys in real time. Get AI-powered insights to understand trends, uncover opportunities, and make better growth decisions\u2014all from a fast, modern dashboard.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hey everyone \ud83d\udc4b<\/p>\n<p>I&#8217;m Khalid, the founder of Reignat.<\/p>\n<p>Reignat started because I was frustrated with analytics tools that were either too complex, too expensive, or required digging through endless reports just to understand what was happening on a website.<\/p>\n<p>I wanted something simpler: a fast analytics platform that gives founders and teams the insights they actually need. Real-time visitors, traffic sources, user journeys, funnels, performance metrics, and AI-powered insights\u2014all in one place.<\/p>\n<p>Over the last few months, I&#8217;ve been building Reignat from the ground up, talking with founders, gathering feedback, and continuously improving the product based on real-world use cases.<\/p>\n<p>This launch is just the beginning. I&#8217;d love to hear your feedback, answer any questions, and learn what you&#8217;d like to see next.<\/p>\n<p>Thanks for checking out Reignat \u2764\ufe0f<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>13<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@uxnouri\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@uxnouri<\/a> Hey Khalid, congrats on the Reignat launch! The product looks genuinely clean, real-time, simple, exactly what indie makers need vs bloated analytics tools. Quick honest note on the name though, &#8220;Reign&#8221; signals power\/dominance, but everything about your positioning (simple, honest, no-noise) is the opposite of that. There&#8217;s a mismatch between what the name promises and what the product actually feels like, especially next to competitors like Plausible or Fathom whose names already nail &#8220;simple and clear.&#8221; I run OXEY LABS, a naming lab, happy to share a few directions if useful, no pressure. Either way, solid build, wishing you a strong launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Privacy-friendly analytics for makers is a good lane, especially if the dashboard stays fast and understandable. Funnels + journeys + AI insights sounds useful. How do you balance AI summaries with keeping the raw metrics transparent?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Nice launch, Khalid \ud83d\udc4f<\/p>\n<p>I run a small digital agency and we ship most of our client sites in Next.js, so a lightweight, privacy-first tracker is exactly the kind of thing I keep looking for \u2014 GA always feels like overkill and the cookie-consent overhead is a pain to justify to clients. A clean script that just gives me visitors, sources and funnels without dragging down performance would be an easy sell.<\/p>\n<p>Two questions before I try it:<\/p>\n<ul>\n<li>\n<p>How heavy is the tracking script, and does it play well with a Next.js App Router setup \/ SPA-style route changes?<\/p>\n<\/li>\n<li>\n<p>Is the data EU-hosted, and is it GDPR-compliant out of the box (no cookie banner needed)? That&#8217;s a real selling point for the clients I work with.<\/p>\n<\/li>\n<\/ul>\n<p>Will give it a spin on one of our sites. Congrats on shipping \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thank you, Abderrahmane!<\/p>\n<p>Really appreciate the thoughtful feedback.<\/p>\n<p>To answer your questions:<\/p>\n<p>\u2022 The tracking script is lightweight and works great with Next.js, including App Router and SPA-style route changes.<\/p>\n<p>\u2022 Reignat is built with privacy in mind. We don&#8217;t use cookies or collect personal data, so for most websites a cookie banner isn&#8217;t required for analytics.<\/p>\n<p>I&#8217;d love to hear your feedback once you&#8217;ve tried it on one of your client sites. Thanks again for the support! <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats, Khalid! Building analytics from a founder&#8217;s perspective often leads to a much better user experience than enterprise-first solutions.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thank you, Roman!<\/p>\n<p>That was exactly the goal. As a founder, I wanted analytics that are simple to understand, actionable, and don&#8217;t require digging through endless dashboards. Really appreciate the support!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The privacy-friendly approach is a huge plus. More founders are looking for actionable insights without compromising visitor privacy.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thank you! <a href=\"https:\/\/www.producthunt.com\/@marianna_tymchuk\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@marianna_tymchuk<\/a>&nbsp; \ud83d\ude4c<\/p>\n<p>That&#8217;s exactly what we&#8217;re aiming for, giving founders actionable insights while keeping visitor privacy at the core of the product. \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I want to ask  for those who are just building their app and still in validation stage, does the performance metric include these categories that I mentioned earlier ?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Hi<a href=\"https:\/\/www.producthunt.com\/@daniel_oyetunde\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@daniel_oyetunde<\/a>,<\/p>\n<p>Yes, absolutely. Reignat is built for products at every stage, including validation. As long as you define the events or funnel steps you care about, you can track key metrics like sign-ups, activations, conversions, and user journeys. <\/p>\n<p>The goal is to help you understand what&#8217;s working and where users drop off, even before revenue becomes a primary metric. \ud83d\ude80<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch! The product looks really clean and I like the focus on making analytics easier to understand.<\/p>\n<p>I&#8217;m curious, what made you decide to build Reignat when there are already so many analytics tools out there? Was there a specific problem you kept running into?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thank you! <a href=\"https:\/\/www.producthunt.com\/@ikram_gafai\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ikram_gafai<\/a> Really appreciate that.<\/p>\n<p>The main reason was frustration, honestly. Most analytics tools either feel too complex, too expensive, or require digging through multiple dashboards just to answer simple questions.<\/p>\n<p>As a founder, I wanted something that tells me what&#8217;s happening on my website in seconds: where visitors come from, what they&#8217;re doing, and where they&#8217;re dropping off. That&#8217;s why Reignat focuses on simplicity, privacy, and actionable insights instead of overwhelming users with hundreds of reports.<\/p>\n<p>I built it first for my own projects, and after talking with other founders, I realized many were facing the same problem.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch. Privacy-friendly analytics is a very real need for indie sites, especially when GA feels too heavy. One thing I\u2019d be curious about: how do your AI insights stay tied to the raw metrics? For makers, the most useful flow might be \u201ctraffic source changed \u2192 affected pages \u2192 likely reason \u2192 suggested experiment\u201d, while still letting us verify every step from the underlying data.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Privacy-friendly analytics built specifically for makers is a great lane \u2014 GA really does feel like overkill for most indie projects, and skipping the cookie banner is a real selling point. Congrats on the launch! How do you balance the AI-powered insights with keeping the raw metrics transparent and trustworthy?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#10<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/IUSWOJD46TP74Z\" class=\"app-title\">Fonda<\/a><\/p>\n<div class=\"one-liner\">Your AI co-founder that remembers decisions + plans for you<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">119<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Fonda\u662f\u4e00\u6b3e\u7ed3\u6784\u5316AI\u521b\u4e1a\u52a9\u624b\uff0c\u901a\u8fc714\u6b65\u9a8c\u8bc1\u6d41\u7a0b\u5e2e\u52a9\u521b\u4e1a\u8005\u4ece\u521b\u610f\u53d1\u73b0\u5230\u89c4\u6a21\u5316\uff0c\u5e76\u8bb0\u5fc6\u6240\u6709\u51b3\u7b56\uff0c\u907f\u514d\u5728\u8584\u5f31\u60f3\u6cd5\u4e0a\u6d6a\u8d39\u6570\u6708\u65f6\u95f4\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/aefa38d4-aead-42c8-9553-9e5d951e4fc4.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/nsK1Y-XaLz4\"><source src=\"https:\/\/youtu.be\/nsK1Y-XaLz4\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/44d3f923-01ba-4a71-b094-e3e7221c1533.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/ec4a9ebc-84a2-474f-913f-f03ccddadf81.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6429d475-8969-470d-917c-80d6f2baf8dc.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/1c9a35da-986f-4e49-aab8-f166fd42c665.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/99e7d4dd-f50f-4d01-8506-e06e286acdd0.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/9f444f9e-5315-48b1-974f-ba2fe086b008.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/99bc7eff-00b8-49e6-a504-f222b8fa7668.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/afb8611a-5945-4b1e-b00d-ce08ecef647d.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">Tech<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u521b\u4e1a\u52a9\u624b<\/span><br \/>\n            <span class=\"tag\">\u51b3\u7b56\u8bb0\u5fc6<\/span><br \/>\n            <span class=\"tag\">\u521b\u610f\u9a8c\u8bc1<\/span><br \/>\n            <span class=\"tag\">\u7ed3\u6784\u5316\u6d41\u7a0b<\/span><br \/>\n            <span class=\"tag\">\u521b\u4e1a\u8005\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u5e02\u573a\u9a8c\u8bc1<\/span><br \/>\n            <span class=\"tag\">MVP\u8ba1\u5212<\/span><br \/>\n            <span class=\"tag\">\u843d\u5730\u9875\u751f\u6210<\/span><br \/>\n            <span class=\"tag\">\u72ec\u7acb\u521b\u59cb\u4eba<\/span><br \/>\n            <span class=\"tag\">\u4ea7\u54c1\u730e\u573a<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u79f0\u8d5e\u7ed3\u6784\u5316\u6307\u5bfc\u4f18\u4e8e\u7a7a\u767d\u804a\u5929\u6846\uff0c\u62c5\u5fe7AI\u8fc7\u4e8e\u987a\u4ece\u3002\u6838\u5fc3\u95ee\u9898\u5305\u62ec\uff1a\u5982\u4f55\u4ece\u73b0\u6709\u5de5\u5177\uff08\u5982Slack\uff09\u62c9\u53d6\u4e0a\u4e0b\u6587\uff1f\u5982\u4f55\u575a\u51b3\u62d2\u7edd\u5df2\u5931\u6548\u7684\u60f3\u6cd5\uff1f\u80fd\u5426\u8df3\u8fc7\u53d1\u73b0\u9636\u6bb5\u76f4\u63a5\u9a8c\u8bc1\u5df2\u6709\u521b\u610f\uff1f\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Fonda\u7cbe\u51c6\u5207\u4e2d\u4e86\u4e00\u4e2a\u88ab\u5ffd\u89c6\u7684\u75db\u70b9\uff1a\u521b\u4e1a\u8005\u9700\u8981\u7684\u662f\u201c\u4e0d\u8ba8\u597d\u7684\u51b3\u7b56\u62cd\u6863\u201d\uff0c\u800c\u975e\u53c8\u4e00\u4e2a\u8bdd\u75e8\u5ba2\u670d\u3002\u5176\u6838\u5fc3\u4ef7\u503c\u4e0d\u5728\u4e8eAI\u6280\u672f\u591a\u524d\u6cbf\uff0c\u800c\u5728\u4e8e\u6784\u5efa\u4e86\u201c\u8bc1\u636e\u7ed1\u5b9a\u201d\u7684\u5426\u51b3\u673a\u5236\u2014\u2014\u901a\u8fc7\u5f3a\u5236\u5ba2\u6237\u8bbf\u8c08\u3001\u9700\u6c42\u6d4b\u8bd5\u7b49\u53ef\u8bc1\u4f2a\u7684\u73af\u8282\uff0c\u8ba9\u6570\u636e\u800c\u975e\u60c5\u7eea\u51b3\u5b9a\u521b\u610f\u751f\u6b7b\u300214\u6b65\u65c5\u7a0b\u7684\u8bbe\u8ba1\u66f4\u503c\u5f97\u73a9\u5473\uff1a\u5b83\u672c\u8d28\u662f\u5c06\u7cbe\u76ca\u521b\u4e1a\u65b9\u6cd5\u8bba\u8f6c\u5316\u4e3a\u53ef\u6267\u884c\u7684SOP\uff0c\u5c24\u5176\u9002\u5408\u7f3a\u4e4f\u5bfc\u5e08\u8d44\u6e90\u7684\u72ec\u7acb\u521b\u59cb\u4eba\u3002\u4e0d\u8fc7\uff0c\u6210\u8d25\u5173\u952e\u5728\u4e8e\u201c\u8bb0\u5fc6\u201d\u529f\u80fd\u80fd\u5426\u771f\u6b63\u89e3\u51b3\u8de8\u4f1a\u8bdd\u51b3\u7b56\u65ad\u88c2\u2014\u2014\u82e5\u4ec5\u7b80\u5355\u5b58\u50a8\u6458\u8981\uff0c\u4ecd\u4f1a\u6ca6\u4e3a\u9ad8\u7ea7\u7b14\u8bb0\u672c\u3002\u66f4\u7280\u5229\u7684\u8003\u9a8c\u5728\u4e8e\uff1a\u5f53\u7528\u6237\u7ecf\u9a8c\u6bd4AI\u66f4\u4e30\u5bcc\u65f6\uff0c\u8fd9\u79cd\u7ed3\u6784\u5316\u6d41\u7a0b\u662f\u5426\u4f1a\u53d8\u6210\u67b7\u9501\uff1f\u76ee\u524d\u770b\uff0cFonda\u806a\u660e\u5730\u5141\u8bb8\u8df3\u8fc7\u53d1\u73b0\u9636\u6bb5\uff0c\u4f46\u82e5\u60f3\u6293\u4f4f\u4e13\u4e1a\u521b\u59cb\u4eba\u7fa4\uff0c\u9700\u5728\u201c\u6df1\u5ea6\u5b9a\u5236\u201d\u4e0e\u201c\u4fdd\u6301\u8bda\u5b9e\u201d\u95f4\u627e\u5230\u66f4\u7075\u6d3b\u7684\u5e73\u8861\u70b9\u3002\u6bd5\u7adf\uff0c\u771f\u6b63\u7684AI co-founder\u4e0d\u5e94\u53ea\u662f\u7167\u672c\u5ba3\u79d1\u7684\u5de5\u5177\u4e66\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Fonda<\/span>\n                <\/div>\n<div class=\"comment-content\">Most &#8220;AI startup tools&#8221; give you a blank chat box. Fonda is different \u2014 it&#8217;s a structured AI co-founder that runs a proven 14-step journey with you: Discover, Validate, Launch, Scale. It remembers every decision, interview, and pivot across sessions. It kills weak ideas before you waste months on them. It ships your landing page, business case, and MVP plan once validated. One clear next move, every day. Free to start.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hey Product Hunt \ud83d\udc4b<\/p>\n<p>We built Fonda because we kept having the same conversation \u2014 founders reaching out at 11pm asking &#8220;does this make sense?&#8221; We couldn&#8217;t always be there. Fonda can.<\/p>\n<p>Most AI tools for founders are just ChatGPT with a startup skin. Fonda is different: it runs a structured 14-step journey (Discover \u2192 Validate \u2192 Launch \u2192 Scale), remembers every decision you&#8217;ve made, and gives you one honest next move every day. If your idea is weak, it tells you. If it clears validation, it ships your landing page, business case, and MVP plan.<\/p>\n<p>Built especially for solo founders and first-timers who don&#8217;t have a co-founder, advisor on speed dial, or $500\/hr consultant.<\/p>\n<p>Free to start, no credit card.<\/p>\n<p>Happy to answer anything below. What&#8217;s the hardest part of your founder journey right now?<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@harshit1144\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@harshit1144<\/a>&nbsp;This is a fascinating approach to the decision memory problem. Most teams lose context between meetings because decisions live in scattered Slack threads and docs. How are you handling the integration challenge of pulling context from existing tools like Slack, Notion, or email without creating more friction? Curious if you&#8217;re seeing teams adopt this as their source of truth or as a supplementary layer.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Structured guidance beats a blank chat box for founder workflows. The decision memory + \u201ckill weak ideas early\u201d angle is useful if it stays honest. How does Fonda push back when a founder keeps steering toward an invalidated idea?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;Good question, and it&#8217;s the one we obsess over. The short version: Fonda&#8217;s pushback isn&#8217;t an opinion, it&#8217;s tied to evidence, so it doesn&#8217;t bend just because you keep steering.<\/p>\n<\/p>\n<p>Each idea has to clear a defined bar through real validation, customer conversations and demand tests that can actually fail. If you keep pushing toward an idea the evidence already killed, Fonda doesn&#8217;t relitigate the vibe, it surfaces the data that invalidated it and asks what new evidence changed. No new evidence, no green light. And because of the decision memory, it remembers the exact reasons something was parked, so you can&#8217;t quietly reset the conversation and get a different answer an hour later. The verdict is go, refine, or pivot, and pivot means it actively hands you a better direction instead of letting you sink weekends into a dead end. Honesty only works if it&#8217;s anchored to something, so we anchored it.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>That &#8220;11pm when the big calls can&#8217;t wait&#8221; line got me, that&#8217;s literally my build window once the kids are down. Building solo, the thing I miss isn&#8217;t another idea, it&#8217;s someone who&#8217;ll tell me an idea is weak before I sink three weekends into it. My honest worry: most AI leans agreeable, so how do you keep Fonda from just nodding along with whatever the founder already wants to build?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@luca_capone\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@luca_capone<\/a>&nbsp;This comment hit home. That 11pm window is exactly who we built this for, and you nailed the real gap. It was never a shortage of ideas, it&#8217;s not having anyone honest in the room at the hour you&#8217;re actually working.<\/p>\n<\/p>\n<p>On the agreeable AI worry, you&#8217;re right to be skeptical, and we designed against it on purpose. Fonda doesn&#8217;t grade your idea on whether it sounds good. It grades it against evidence you collect from real people. Before you build anything, it sets up falsifiable demand tests, things that can clearly fail, then helps you go talk to actual potential customers. The verdict comes from what those people did and said, not from what you hoped. So if the signal is weak, Fonda tells you it&#8217;s weak and points you somewhere better, even when you really want to hear yes. The whole bet is that a co-founder who only nods is worthless. Thanks for the thoughtful note.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I really like the idea of having a structured guide for founders instead of just another chatbot. Starting a business can feel overwhelming, especially when you&#8217;re doing it alone.<\/p>\n<p>The focus on giving one clear next step at a time sounds particularly helpful. Sometimes that&#8217;s exactly what founders need to keep moving forward.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@gabriella_anjani\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@gabriella_anjani<\/a>&nbsp;Thanks Gabriella!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I already have a rough idea, so the main question for me is where Fonda lets you enter the journey. Can you bring your own idea and start around Validate, or does every project need to begin with the profile and matched-opportunity steps?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@novamaker01\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@novamaker01<\/a>&nbsp;Hey Felix, good question. You&#8217;re not locked into the full path. The profile and matched-opportunity steps exist mainly for people who are still figuring out what to build, so Fonda can point them toward a direction. If you already have an idea in hand, those steps get skipped and you can jump straight into Validate. So yes, bring your own idea and start there.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch!  I like the idea of focusing on the next actionable step instead of overwhelming founders with endless advice.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">@alina_tyslenok_ Thanks for your review \ud83d\ude4c<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>A structured 14-step journey with decision memory is a much better fit for founders than yet another blank chat box. The &#8220;honest when your idea is weak&#8221; angle is the part that really matters. Congrats on the launch! How do you keep Fonda from just agreeing with whatever the founder already wants to build?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#11<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/EO44MRSZGFO2ED\" class=\"app-title\">Synopsule<\/a><\/p>\n<div class=\"one-liner\">On device private AI meeting transcripts<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">115<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Synopsule \u662f\u4e00\u6b3e\u5b8c\u5168\u8fd0\u884c\u5728\u8bbe\u5907\u672c\u5730\u7684AI\u4f1a\u8bae\u8f6c\u5f55\u5de5\u5177\uff0c\u89e3\u51b3\u4e86\u7528\u6237\u5bf9\u5f55\u97f3\u9690\u79c1\u6cc4\u9732\u548c\u5f3a\u5236\u8ba2\u9605\u7684\u75db\u70b9\uff0c\u65e0\u9700\u8d26\u53f7\u3001\u65e0\u9700\u4e0a\u4f20\u4e91\u7aef\uff0c\u5373\u53ef\u5728Mac\u548ciPhone\u4e0a\u79bb\u7ebf\u5b8c\u6210\u4f1a\u8bae\u5f55\u97f3\u3001\u8bf4\u8bdd\u4eba\u8bc6\u522b\u548c\u6309\u9700\u6458\u8981\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b4a736b4-76ab-4735-86fb-19eef07c8f55.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/580fac72-cf20-46e6-9565-96b217349196.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/5a85373d-6f40-4090-b129-59dfc830e0cf.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a5b3c99d-48b6-4517-b227-0ad5e3df46f5.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/71930292-245d-4784-902f-d4f29cd67475.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/bcbfff18-5270-49d7-b68a-25bb54ef1117.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/vtdWYTKOOWU\"><source src=\"https:\/\/youtu.be\/vtdWYTKOOWU\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Meetings<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u672c\u5730AI<\/span><br \/>\n            <span class=\"tag\">\u4f1a\u8bae\u8f6c\u5f55<\/span><br \/>\n            <span class=\"tag\">\u9690\u79c1\u4fdd\u62a4<\/span><br \/>\n            <span class=\"tag\">\u79bb\u7ebf\u5f55\u97f3<\/span><br \/>\n            <span class=\"tag\">\u8bf4\u8bdd\u4eba\u6807\u7b7e<\/span><br \/>\n            <span class=\"tag\">Whisper<\/span><br \/>\n            <span class=\"tag\">\u4e00\u6b21\u6027\u8d2d\u4e70<\/span><br \/>\n            <span class=\"tag\">macOS<\/span><br \/>\n            <span class=\"tag\">iOS<\/span><br \/>\n            <span class=\"tag\">MCP\u96c6\u6210<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8d5e\u8d4f\u5176\u9690\u79c1\u4f18\u5148\u548c\u4e00\u6b21\u6027\u8d2d\u4e70\u6a21\u5f0f\uff0c\u4e3b\u8981\u5173\u5fc3\u957f\u65f6\u4f1a\u8bae\u4e2d\u8bf4\u8bdd\u4eba\u6807\u7b7e\u7684\u51c6\u786e\u6027\uff0c\u5c24\u5176\u662f\u591a\u4eba\u53e0\u8bdd\u573a\u666f\u4e0b\u7684\u8868\u73b0\u3002\u6709\u7528\u6237\u5efa\u8bae\u589e\u52a0\u4eceGranola\u7b49\u5de5\u5177\u8fc1\u79fb\u6570\u636e\u7684\u529f\u80fd\uff0c\u5f00\u53d1\u8005\u8868\u793a\u4f1a\u8003\u8651\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Synopsule \u7cbe\u51c6\u5207\u4e2d\u4e86\u5f53\u4e0b\u4f1a\u8bae\u5de5\u5177\u7684\u4e24\u5927\u8f6f\u808b\uff1a\u9690\u79c1\u6362\u4fbf\u5229\u7684\u884c\u4e1a\u6f5c\u89c4\u5219\u548c\u65e5\u76ca\u6cdb\u6ee5\u7684\u8ba2\u9605\u5236\u3002\u5b83\u901a\u8fc7\u5168\u6d41\u7a0b\u672c\u5730\u5316\uff08Whisper\u8f6c\u5f55+\u8bbe\u5907\u7aef\u8bf4\u8bdd\u4eba\u8bc6\u522b\uff09\u5f7b\u5e95\u5c01\u6b7b\u4e86\u201c\u97f3\u9891\u4e0a\u4f20\u201d\u8fd9\u6761\u6570\u636e\u6cc4\u9732\u901a\u9053\uff0c\u540c\u65f6\u4ee5\u4e00\u6b21\u4ed8\u8d394.99\u7f8e\u5143\uff08\u8bc4\u8bba\u4e2d\u63d0\u53ca1.99\u7f8e\u5143\u4e3a\u65e9\u671f\u5b9a\u4ef7\uff09\u5bf9\u6297\u6240\u6709\u7ade\u54c1\u6309\u6708\u6536\u5272\u7684\u5546\u4e1a\u6a21\u5f0f\uff0c\u8fd9\u5957\u7ec4\u5408\u62f3\u5728\u903b\u8f91\u4e0a\u51e0\u4e4e\u65e0\u61c8\u53ef\u51fb\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u4ea7\u54c1\u7684\u771f\u6b63\u62a4\u57ce\u6cb3\u5e76\u975e\u201c\u672c\u5730\u5316\u201d\u672c\u8eab\uff0c\u800c\u662f\u5176MCP\u96c6\u6210\u80fd\u529b\u2014\u2014\u8fd9\u4f7f\u5176\u4ece\u5b64\u7acb\u7684\u8f6c\u5f55\u5de5\u5177\u5347\u7ea7\u4e3aAI\u5de5\u4f5c\u6d41\u7684\u57fa\u7840\u8bbe\u65bd\u3002\u7528\u6237\u53ef\u5c06\u7eaf\u51c0\u7684\u8f6c\u5f55\u6587\u672c\u76f4\u8fdeClaude\u3001Codex\u7b49\u5927\u6a21\u578b\uff0c\u81ea\u4e3b\u51b3\u5b9a\u6458\u8981\u751f\u6210\u7684\u8c03\u7528\u65b9\u5f0f\uff08\u672c\u5730\u6a21\u578b\u6216\u81ea\u5907API Key\uff09\uff0c\u8fd9\u79cd\u201c\u7ba1\u9053\u5316\u201d\u601d\u7ef4\u8fdc\u6bd4\u591a\u6570\u7ade\u54c1\u5185\u7f6e\u7684AI\u6458\u8981\u66f4\u6709\u60f3\u8c61\u7a7a\u95f4\u3002\u4e0d\u8fc7\uff0c\u6267\u884c\u5c42\u9762\u7684\u9690\u60a3\u4e0d\u5bb9\u5ffd\u89c6\uff1a\u79bb\u7ebf\u8bf4\u8bdd\u4eba\u8bc6\u522b\u5728\u591a\u4eba\u53e0\u8bdd\u573a\u666f\u4e0b\u7684\u8868\u73b0\uff0c\u5f00\u53d1\u8005\u627f\u8ba4\u201c\u4f1a\u8d8a\u6765\u8d8a\u597d\u201d\uff0c\u4f46\u521d\u59cb\u4f53\u9a8c\u7684\u843d\u5dee\u53ef\u80fd\u76f4\u63a5\u529d\u9000\u4e13\u4e1a\u7528\u6237\uff1b\u4e14\u8de8\u8bbe\u5907\u540c\u6b65\u3001\u957f\u5f55\u97f3\u6587\u4ef6\u7ba1\u7406\u7b49\u57fa\u7840\u4f53\u9a8c\u82e5\u51fa\u73b0\u77ed\u677f\uff0c\u4f1a\u5feb\u901f\u6d88\u8017\u7528\u6237\u7684\u521d\u59cb\u597d\u611f\u3002\u6b64\u5916\uff0c1.99\u7f8e\u5143\uff08\u5b9e\u4ed84.99\u7f8e\u5143\uff09\u7684\u4ef7\u683c\u867d\u78be\u538b\u8ba2\u9605\u5236\uff0c\u4f46\u7ef4\u62a4\u672c\u5730\u6a21\u578b\u4e0e\u7cfb\u7edf\u97f3\u9891\u6355\u83b7\u7684\u517c\u5bb9\u6027\uff08\u5c24\u5176\u662f\u672a\u6765macOS\u7248\u672c\u66f4\u65b0\u5e26\u6765\u7684API\u53d8\u66f4\uff09\u6240\u9700\u7684\u6280\u672f\u6295\u5165\uff0c\u5bf9\u5176\u8f7b\u91cf\u56e2\u961f\u662f\u6301\u7eed\u6027\u6311\u6218\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u5b83\u6ca1\u6709\u89e3\u51b3\u201c\u8f6c\u5f55\u51c6\u786e\u7387\u201d\u8fd9\u4e2a\u7ec8\u6781\u96be\u9898\u2014\u2014\u56e0\u4e3a\u8fd9\u672c\u8d28\u4e0a\u4f9d\u8d56\u4e8eWhisper\u81ea\u8eab\u7684\u80fd\u529b\u5929\u82b1\u677f\u3002\u4f46\u5b83\u7684\u771f\u6b63\u4ef7\u503c\u5728\u4e8e\uff1a\u4e3a\u90a3\u4e9b\u5b81\u8981\u201c\u4e0d\u5b8c\u5168\u6b63\u786e\u7684\u79bb\u7ebf\u7ed3\u679c\u201d\u4e5f\u4e0d\u8981\u201c\u5b8c\u5168\u6b63\u786e\u7684\u4e91\u7aef\u5356\u8eab\u5951\u201d\u7684\u7528\u6237\uff0c\u63d0\u4f9b\u4e86\u4e00\u4e2a\u6709\u5c0a\u4e25\u7684\u9009\u62e9\u3002\u5982\u679c\u5b83\u80fd\u6301\u7eed\u4f18\u5316\u53e0\u8bdd\u573a\u666f\u4e0b\u7684Diarization\u7cbe\u5ea6\u5e76\u4fdd\u6301\u5b9a\u4ef7\u514b\u5236\uff0c\u6709\u671b\u6210\u4e3a\u9690\u79c1\u654f\u611f\u578b\u7ec4\u7ec7\u7684\u6807\u914d\uff0c\u4f46\u82e5\u60f3\u6311\u6218Otter.ai\u3001Fireflies\u7b49\u4e91\u7aef\u5de8\u5934\uff0c\u5219\u4ecd\u9700\u5728\u529f\u80fd\u4e30\u5bcc\u5ea6\u548c\u751f\u6001\u6574\u5408\u4e0a\u8bc1\u660e\u201c\u672c\u5730\u65b9\u6848\u201d\u7684\u5546\u4e1a\u6548\u7387\u5e76\u4e0d\u900a\u8272\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Synopsule<\/span>\n                <\/div>\n<div class=\"comment-content\">Synopsule records and transcribes your conversations on your Mac or iPhone with Whisper, labels every speaker, and only summarizes when you ask. No accounts, no uploads. Now on the App Store \u2014 one $4.99 purchase for Mac and iPhone.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I built Synopsule because every meeting tool I tried wanted my audio in their cloud,<br \/>an account, and a bot in the call. I wanted the transcript without the trade.<\/p>\n<p>So the whole pipeline runs on the device that recorded it:<br \/>&#8211; Whisper transcribes locally. The model ships in the app, so it works offline on first launch.<br \/>&#8211; On the Mac it captures both sides of a Zoom\/Meet\/Teams call by tapping system audio<br \/>directly. No bot, no screen recording, no virtual driver.<br \/>&#8211; Speaker recognition runs on-device too. It labels who said what, remembers returning<br \/>voices across recordings, and learns from your corrections. Raw audio is deleted once<br \/>the transcript exists.<\/p>\n<\/p>\n<p>Includes MCP functionality so you can integrate your meeting transcripts with Claude, Codex, and ChatGPT. <\/p>\n<p>Summaries are the one thing that can touch the cloud, and only if you ask. Bring your<br \/>own key, or run a local model on the Mac so even that stays on your machine. Only<br \/>transcript text ever leaves, only when you choose.<\/p>\n<p>It&#8217;s $1.99 once for both Mac and iPhone. Transcription shouldn&#8217;t be a subscription.<\/p>\n<p>The hardest part was diarization on long, messy recordings, and making speaker<br \/>recognition improve locally without a cloud model.<\/p>\n<p>I&#8217;d love feedback, and I&#8217;m here all day. What would it take for you to trust an<br \/>on-device transcriber over the cloud one you use now?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sunny_nagra\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sunny_nagra<\/a>&nbsp;I like the privacy-first approach. Recording and transcribing locally with no accounts or uploads is a refreshing alternative to cloud-based tools, and the one-time purchase model makes it even more appealing. Curious how accurate the speaker labeling is in longer conversations.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Nice, so it works fully offline with Whisper for transcription and some sort of a local Apple LLM?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@lach_p\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@lach_p<\/a>&nbsp;Correct, fully offline with whisper. If you want to do transcript summarization, you have the options of. using Apple LLM or bring your own API key for OpenAI\/Claude or you can use our service. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Fully on-device with no bot in the call and audio that never leaves the machine is exactly the privacy stance meeting tools have been missing. A one-time purchase instead of a subscription is a nice bonus. Congrats on the launch! How does the on-device speaker labeling hold up on long calls when people talk over each other?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Sunny, this is indeed very welcome. I am currently with Granola and has tonnes of meetings captured there. Is there a way to migrate them to Synopsule? <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@arun_keepanasseril\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@arun_keepanasseril<\/a>&nbsp;Hi Arun, I do not have a workflow for this currently, but will look into it, its a great idea. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love the product positioning. Many transcription apps focus on AI summaries first, while you&#8217;re focusing on accurate transcripts and letting users decide what happens next.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@roman_burdyga\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@roman_burdyga<\/a>&nbsp;Thanks! Let me know what you think if you get a chance to use it. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>No bot in the call is the detail that stands out to me. Getting transcripts from Zoom\/Meet\/Teams without uploading audio or adding another participant feels much cleaner for real meetings.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Does speaker labeling work offline too, or does it need extra processing somewhere?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@karimbenkeroum\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@karimbenkeroum<\/a>&nbsp;speaker labelling also works offline!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The on-device, no-upload stance is the part I keep coming back to. I work on voice AI for aging-in-place, and the privacy bar gets brutal once you are handling conversations that involve someone&#8217;s parents or their health. Running Whisper locally so the audio never leaves the machine is a real answer to that. How is the on-device speaker recognition holding up with overlapping talkers or weaker mics? That is usually where local models start to struggle for us.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@igorgurovich\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@igorgurovich<\/a>&nbsp;Works okay, but the speaker embeddings actually get better over time as you label\/identify speakers. Also recognize that it won&#8217;t be perfect, so trying to keep it easy for users to correct the speakers and have that also improve recognition going forward. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>on-device is the version people want once they think about who&#8217;s in the room. the part demos skip is diarization holding across a 60-min call when people talk over each other \u2014 no cloud gpu locally.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@qifengzheng\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@qifengzheng<\/a>&nbsp;The summary\/diarization occurs live, but also happens again after the call is over with a stronger model for more accuracy <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>On-device transcription with summaries only on request is a refreshing privacy stance for meeting tools. The one-time Mac+iPhone purchase also stands out. How well does speaker labeling hold up in noisy multi-person conversations?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;Works decently well right now, there is also an option within the app for you to toggle the sensitivity of speaker identification. Also, if you label speakers, as you talk to the same person over time, the recognition for that person gets better over time. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#12<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/RNU637CB76TRTW\" class=\"app-title\">AEVS<\/a><\/p>\n<div class=\"one-liner\">proof-of-execution for AI agents<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">114<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>AEVS\u662f\u4e00\u4e2a\u5373\u63d2\u5373\u7528\u7684SDK\uff0c\u4e3aAI\u667a\u80fd\u4f53\u7684\u6bcf\u6b21\u5de5\u5177\u8c03\u7528\u751f\u6210\u9632\u7be1\u6539\u7684\u6267\u884c\u6536\u636e\uff0c\u89e3\u51b3\u56e2\u961f\u5728\u667a\u80fd\u4f53\u6267\u884c\u5173\u952e\u4efb\u52a1\u65f6\u65e0\u6cd5\u53ef\u9760\u9a8c\u8bc1\u201c\u667a\u80fd\u4f53\u5230\u5e95\u505a\u4e86\u4ec0\u4e48\u201d\u7684\u4fe1\u4efb\u548c\u5ba1\u8ba1\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/5185f9bd-4c12-49f3-af8a-69beafbeef7b.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/dfabbd53-0c3f-4b46-816c-3a7c864343c5.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f82d907d-9176-41b2-9164-c9dca8ce6b14.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b12b276a-411b-4300-a093-2669a1cb8cb2.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/90999945-2d7e-49a3-a68d-ac0310ef51c6.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/89b81fb1-b311-4b8d-a50e-186674855082.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/36b6e0cb-df3e-41b9-b251-0fef66ce8117.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/ORJoqLIVeio\"><source src=\"https:\/\/youtu.be\/ORJoqLIVeio\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Developer Tools<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">SDK<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u667a\u80fd\u4f53<\/span><br \/>\n            <span class=\"tag\">\u6267\u884c\u9a8c\u8bc1<\/span><br \/>\n            <span class=\"tag\">\u9632\u7be1\u6539<\/span><br \/>\n            <span class=\"tag\">SDK<\/span><br \/>\n            <span class=\"tag\">\u5ba1\u8ba1<\/span><br \/>\n            <span class=\"tag\">\u4fe1\u4efb<\/span><br \/>\n            <span class=\"tag\">LangChain<\/span><br \/>\n            <span class=\"tag\">MCP<\/span><br \/>\n            <span class=\"tag\">\u5de5\u5177\u8c03\u7528<\/span><br \/>\n            <span class=\"tag\">\u53ef\u8ffd\u6eaf\u6027<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u79f0\u8d5e\u5176\u6613\u7528\u6027\uff08\u4e24\u884c\u4ee3\u7801\u96c6\u6210\uff09\uff0c\u4f46\u6838\u5fc3\u5173\u5207\u96c6\u4e2d\u5728\u4e24\u70b9\uff1a\u4e00\u662f\u654f\u611f\u6570\u636e\u80fd\u5426\u5728\u88ab\u8bb0\u5f55\u524d\u8131\u654f\uff08\u652f\u6301\u4e09\u79cd\u53ef\u89c1\u6027\u7ea7\u522b\uff09\uff1b\u4e8c\u662f\u201c\u4e8b\u540e\u8bc1\u660e\u201d\u4e0d\u591f\uff0c\u9700\u7ed3\u5408\u9884\u6267\u884c\u5ba1\u6279\u6765\u9632\u8303\u9ad8\u98ce\u9669\u64cd\u4f5c\u3002\u53e6\u6307\u51faAEVS\u4ec5\u9a8c\u8bc1\u201c\u53d1\u751f\u4e86\u4ec0\u4e48\u201d\uff0c\u65e0\u6cd5\u89e3\u91ca\u201c\u4e3a\u4ec0\u4e48\u51b3\u7b56\u201d\uff0c\u8fd9\u662f\u4e0b\u4e00\u6b65\u6311\u6218\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                AEVS\u7cbe\u51c6\u5207\u4e2d\u4e86AI\u667a\u80fd\u4f53\u4ece\u201c\u73a9\u5177\u201d\u8d70\u5411\u201c\u751f\u4ea7\u529b\u5de5\u5177\u201d\u65f6\u6700\u9690\u6666\u4f46\u81f4\u547d\u7684\u4fe1\u4efb\u7f3a\u53e3\u3002\u5f53\u667a\u80fd\u4f53\u5f00\u59cb\u64cd\u4f5c\u5ba2\u6237\u6570\u636e\u3001\u89e6\u53d1\u8d22\u52a1\u6d41\u7a0b\u6216\u4fee\u6539\u751f\u4ea7\u72b6\u6001\u65f6\uff0c\u4ec5\u9760\u804a\u5929\u8bb0\u5f55\u548c\u8106\u5f31\u7684\u65e5\u5fd7\u6765\u8bc1\u660e\u5176\u884c\u4e3a\uff0c\u65e0\u5f02\u4e8e\u8ba9\u7f6a\u72af\u81ea\u5df1\u5199\u4f9b\u8bcd\u3002AEVS\u7684\u4ef7\u503c\u5728\u4e8e\u4e3a\u667a\u80fd\u4f53\u7684\u201c\u884c\u4e3a\u201d\u5f15\u5165\u4e86\u7c7b\u4f3c\u533a\u5757\u94fe\u7684\u201c\u54c8\u5e0c\u70d9\u5370\u201d\u2014\u2014\u5b83\u4e0d\u5173\u5fc3\u667a\u80fd\u4f53\u7684\u601d\u8003\u8fc7\u7a0b\uff0c\u53ea\u786e\u4fdd\u201c\u4f60\u770b\u5230\u7684\u6267\u884c\u62a5\u544a\u5c31\u662f\u5b9e\u9645\u53d1\u751f\u7684\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u8fd9\u79cd\u4ef7\u503c\u76ee\u524d\u5b58\u5728\u660e\u663e\u7684\u8fb9\u754c\u3002\u9996\u5148\uff0c\u5b83\u672c\u8d28\u4e0a\u662f\u201c\u4e8b\u540e\u8bf8\u845b\u4eae\u201d\uff0c\u867d\u7136\u63d0\u4f9b\u4e86\u9632\u7be1\u6539\u7684\u5ba1\u8ba1\u7ebf\u7d22\uff0c\u4f46\u5bf9\u4e8e\u6b63\u5728\u53d1\u751f\u7684\u3001\u53ef\u80fd\u9020\u6210\u7834\u574f\u7684\u9ad8\u98ce\u9669\u64cd\u4f5c\uff08\u5982\u8f6c\u8d26\u3001\u5220\u5e93\uff09\uff0c\u7f3a\u4e4f\u524d\u7f6e\u62e6\u622a\u7684\u201c\u95e8\u63a7\u201d\u673a\u5236\u3002\u6b63\u5982\u7528\u6237\u6240\u63d0\uff0c\u771f\u6b63\u7684\u4fe1\u4efb\u94fe\u6761\u9700\u8981\u201c\u6536\u636e+\u5ba1\u6279\u201d\u7684\u53cc\u91cd\u4fdd\u9669\u3002\u5176\u6b21\uff0cAEVS\u56de\u907f\u4e86\u5f53\u524dAI\u9886\u57df\u6700\u68d8\u624b\u7684\u95ee\u9898\uff1a\u9a8c\u8bc1\u201c\u610f\u56fe\u201d\u3002\u4e00\u4e2a\u5de5\u5177\u8c03\u7528\u6b63\u786e\u4f46\u53c2\u6570\u9519\u8bef\u7684\u64cd\u4f5c\uff0c\u6216\u8005\u57fa\u4e8e\u9519\u8bef\u63a8\u7406\u5f97\u51fa\u7684\u201c\u6b63\u786e\u201d\u6267\u884c\uff0cAEVS\u65e0\u6cd5\u533a\u5206\u3002\u5b83\u53ea\u80fd\u8bc1\u660e\u201c\u53bb\u4e86\u5893\u5730\u201d\uff0c\u4e0d\u80fd\u8bc1\u660e\u201c\u662f\u53bb\u57cb\u846c\u8fd8\u662f\u76d7\u5893\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u66f4\u503c\u5f97\u6df1\u601d\u7684\u662f\u8bc4\u8bba\u4e2d\u201c\u4e3a\u89e3\u51b3\u89c4\u6a21\u5316\u540e\u7684\u4fe1\u4efb\u95ee\u9898\u800c\u751f\u201d\u7684\u89c2\u70b9\u3002\u76ee\u524d\u5927\u591a\u6570\u56e2\u961f\u7684\u56f0\u5883\u662f\u201c\u667a\u80fd\u4f53\u6839\u672c\u8dd1\u4e0d\u901a\u201d\uff0c\u800c\u975e\u201c\u8dd1\u901a\u4e86\u4f46\u6015\u5b83\u6492\u8c0e\u201d\u3002AEVS\u7684\u65e9\u671f\u53d7\u4f17\u53ef\u80fd\u66f4\u591a\u662f\u91d1\u878d\u3001\u5408\u89c4\u7b49\u5f3a\u76d1\u7ba1\u9886\u57df\u7684\u5148\u884c\u8005\uff0c\u800c\u975e\u5e7f\u5927\u7684\u521d\u521b\u63a2\u7d22\u8005\u3002\u5176\u771f\u6b63\u4ef7\u503c\u6216\u8bb8\u4e0d\u5728\u4e8e\u89e3\u51b3\u5f53\u4e0b\u7684\u6280\u672f\u74f6\u9888\uff0c\u800c\u5728\u4e8e\u4e3aAI\u667a\u80fd\u4f53\u7684\u201c\u8fdb\u5165\u751f\u4ea7\u201d\u63d0\u524d\u94fa\u8bbe\u4fe1\u4efb\u57fa\u7840\u8bbe\u65bd\u2014\u2014\u5f53\u672a\u6765\u667a\u80fd\u4f53\u6210\u4e3a\u4f01\u4e1a\u6838\u5fc3\u6d41\u7a0b\u7684\u201c\u89e6\u624b\u201d\u65f6\uff0c\u6ca1\u6709AEVS\u8fd9\u6837\u7684\u9a8c\u8bc1\u5c42\uff0c\u4efb\u4f55CFO\u6216\u5408\u89c4\u5b98\u90fd\u4e0d\u6562\u6309\u4e0b\u542f\u7528\u952e\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">AEVS<\/span>\n                <\/div>\n<div class=\"comment-content\">AEVS (Agent Execution Verification System) is a drop-in SDK that records every AI agent tool call and gives agents verifiable execution receipts. It captures the tool, inputs, outputs, status, and timing as tamper-evident proof, so teams can verify what an agent actually executed without relying on chat history or fragile logs.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt \ud83d\udc4b<\/p>\n<p>We built <strong>AEVS<\/strong> at Fetch AI because as AI agents start doing real work, it\u2019s becoming harder to answer a simple but important question:<\/p>\n<p><strong>What did the agent actually execute?<\/strong> \ud83e\udd14<\/p>\n<p>Chat history can tell you what an agent said. Logs can help, but they\u2019re often scattered, incomplete, or easy to lose. For agents that call tools, trigger workflows, move data, or interact with external systems, teams need something stronger: a verifiable record of execution \u2705<\/p>\n<p>That\u2019s what <strong>AEVS<\/strong> provides.<\/p>\n<p>AEVS is a drop-in SDK that records every AI agent tool call as a <strong>tamper-evident execution receipt<\/strong> <\/p>\n<p>Each receipt captures the tool used, inputs, outputs, status, and timing, so teams can verify what an agent actually did without relying only on chat history or fragile logs.<\/p>\n<p>The goal is to make agent execution more <strong>trustworthy, auditable, and production-ready<\/strong> \ud83d\udd10<\/p>\n<p>It\u2019s designed for builders working with agent frameworks like LangChain\/LangGraph, MCP tools, and custom agent stacks \ud83d\udee0\ufe0f<\/p>\n<p>You can add AEVS to your existing workflow and start generating verifiable receipts for tool calls without rebuilding your agent from scratch \ud83d\ude80<\/p>\n<p>We\u2019re especially interested in use cases where agents perform actions that matter: customer support workflows, financial operations, internal tools, compliance-sensitive tasks, data pipelines, and API automation<\/p>\n<p>I\u2019d love feedback from agent builders, infra teams, and anyone thinking about trust and verification for AI systems \ud83d\ude4c<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>18<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>One thing we&#8217;re particularly excited about is how easy AEVS is to adopt.<\/p>\n<p>\u2705 ~2 lines of code to integrate<\/p>\n<p>\u2705 Supports LangChain, LangGraph, and MCP today<\/p>\n<p>\u2705 CrewAI support coming soon<\/p>\n<p>You can even tell your coding agent:<\/p>\n<blockquote>\n<p>Read <a href=\"https:\/\/aevs.fetch.ai\/llms.txt\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/aevs.fetch.ai\/llms.txt<\/a> and add AEVS to my agent<\/p>\n<\/blockquote>\n<p>and it can help integrate AEVS directly into your workflow.<\/p>\n<p>Our goal was simple: make verifiable agent execution accessible without forcing developers to redesign their existing stack.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>12<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The receipt model makes sense for agent workflows where a tool call can change customer state, like support ops or billing automation, and chat logs are not enough. Capturing inputs, outputs, status, and timing as a receipt feels useful, but the edge case I\u2019d worry about is sensitive payloads. Can teams redact specific fields before the receipt is written while still keeping the proof tamper-evident?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>4<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@hazy0\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"hazy0\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@hazy0<\/a> Great question. AEVS doesn&#8217;t always store complete receipt data, we designed it with privacy in mind and support 3 visibility levels:<\/p>\n<p>\u2022 <strong>Public<\/strong>: full receipt data is visible to verifiers<br \/>\u2022 <strong>Private<\/strong>: only key metadata and input\/output hashes are visible to verifiers, while the owner can still access the full data in the dashboard<br \/>\u2022 <strong>Proof Only<\/strong>: only receipt metadata is shared with AEVS; no input\/output data leaves the agent runtime<\/p>\n<p>And along with receipt visibility levels you can also choose whether receipts are discoverable on the <a href=\"https:\/\/explorer.aevs.fetch.ai\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">AEVS Explorer<\/a> or remain private.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This resonates. I ship an MCP server for ad-account monitoring, and the audit log of every tool call (tool, sanitized params, latency, result) turned out to be the feature people trusted most, especially once agents could trigger actions on live accounts. The piece I&#8217;d add: receipts answer &#8220;what happened,&#8221; but for actions that move money or change customer state, the bigger win is gating the write before it executes, not just proving it after. Receipt plus an approval step is the real combo. Are you thinking about a pre-execution hook, or is AEVS purely the record after the call fires?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@hunter_upscale\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@hunter_upscale<\/a>&nbsp;really good idea, pre-approval on specific tool calls is worth exploring for high-stakes actions<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congrats on the launch!  As agents become more autonomous, knowing what they actually did becomes just as important as what they said. The execution receipt concept is really interesting.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@alina_tyslenok_\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@alina_tyslenok_<\/a>&nbsp;Thanks! We believe verifiable execution will become a core building block as agents take on more real-world responsibilities. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>3<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Congratulations on today&#8217;s launch.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@thamibenjelloun\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thamibenjelloun<\/a>&nbsp;thank you Thami<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thank you<a href=\"https:\/\/www.producthunt.com\/@thamibenjelloun\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@thamibenjelloun<\/a>&nbsp;! Hope you enjoy exploring AEVS.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@mehul_g001\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"mehul_g001\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@mehul_g001<\/a> Interesting idea, but I wonder if builders are solving for a problem that only appears after agents reach a certain scale.<\/p>\n<\/p>\n<p>Most teams I know are still struggling to get agents to work reliably.<\/p>\n<\/p>\n<p>At what point do customers start saying \u201cI need verifiable execution receipts\u201d instead of \u201cI just need my agent to stop breaking\u201d?<\/p>\n<\/p>\n<p>Would love to know what your early adopters look like.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@mehul_g001\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"mehul_g001\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@mehul_g001<\/a> The concept makes sense for high-trust environments, but I\u2019m curious where the boundary is between observability and proof.<\/p>\n<\/p>\n<p>If an agent calls the correct tool but submits the wrong parameters, or reaches the wrong conclusion based on valid execution, does AEVS help teams understand <em>why<\/em> the decision was made, or only prove that it happened?<\/p>\n<\/p>\n<p>It feels like the next challenge for AI systems isn\u2019t just verifying execution, but verifying intent and reasoning as well.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@moh_codokiai\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@moh_codokiai<\/a>&nbsp;Great question! Currently AEVS does not answer <em>why, <\/em>it only proves that what your agent said happened has happened. Verifying intent and reasoning is the next big challenge.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This hits a real trust gap for agents: chat history is not an execution log. Tamper-evident receipts for tool calls could become table stakes. Are receipts designed to be portable across agent frameworks, or mostly SDK-local at launch?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;receipts are just standard structure and can be created for any framework, currently AEVS support Langchain, and MCP framework and support for CrewAI is lined up for next release <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Can AEVS verify why an agent made a decision, or only what action it executed?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@therohanraghuwanshi\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@therohanraghuwanshi<\/a>&nbsp;AEVS focuses on verifying what an agent executed, not why it made a particular decision.<\/p>\n<p>It captures and verifies actions, tool calls, inputs, outputs, and execution metadata, creating an auditable record of what actually happened. The agent&#8217;s internal reasoning remains separate from the verification layer.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>4<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#13<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/PFDDIY5D2NHQRY\" class=\"app-title\">Tinfoil Pigeons<\/a><\/p>\n<div class=\"one-liner\">See the aircraft flying over you on a retro radar scope<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">113<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>\u8f93\u5165\u90ae\u7f16\u5373\u53ef\u5728\u590d\u53e4\u96f7\u8fbe\u5c4f\u5e55\u4e0a\u5b9e\u65f6\u67e5\u770b\u5934\u9876\u98de\u8fc7\u7684\u98de\u673a\u4fe1\u606f\uff0c\u6ee1\u8db3\u597d\u5947\u5fc3\u548c\u822a\u7a7a\u8da3\u5473\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/78e091df-9204-4aa1-a490-bda9cc1a5523.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d223ea6d-0a9b-4ccc-b9fd-56229a8ecafb.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/395076d1-1a60-42fe-a927-c2b7701207e3.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Travel<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u822a\u7a7a\u8ddf\u8e2a<\/span><br \/>\n            <span class=\"tag\">\u5b9e\u65f6\u96f7\u8fbe<\/span><br \/>\n            <span class=\"tag\">\u90ae\u7f16\u67e5\u8be2<\/span><br \/>\n            <span class=\"tag\">\u98de\u673a\u8bc6\u522b<\/span><br \/>\n            <span class=\"tag\">\u590d\u53e4UI<\/span><br \/>\n            <span class=\"tag\">ADS-B<\/span><br \/>\n            <span class=\"tag\">\u8da3\u5473\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u4e2a\u4eba\u9879\u76ee<\/span><br \/>\n            <span class=\"tag\">\u822a\u7a7a\u7231\u597d\u8005<\/span><br \/>\n            <span class=\"tag\">\u8f7b\u91cf\u5e94\u7528<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u8d5e\u8d4f\u5176\u7b80\u6d01\u201c\u90ae\u7f16\u7b2c\u4e00\u201d\u7684\u4f53\u9a8c\u548c\u590d\u53e4\u96f7\u8fbe\u7f8e\u5b66\uff0c\u53cd\u9988\u96c6\u4e2d\u5728\u5e0c\u671b\u589e\u52a0\u901a\u77e5\u63d0\u9192\uff08\u5f53\u98de\u673a\u8fdb\u5165\u5934\u9876\u65f6\uff09\uff0c\u5f00\u53d1\u8005\u5df2\u8868\u793a\u5c06\u5728\u540e\u7eed\u66f4\u65b0\u4e2d\u52a0\u5165\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Tinfoil Pigeons \u7684\u806a\u660e\u4e4b\u5904\u5728\u4e8e\u7528\u201c\u590d\u53e4\u96f7\u8fbe\u7f8e\u5b66\u201d\u91cd\u65b0\u5305\u88c5\u4e86\u4e00\u4e2a\u672c\u8be5\u67af\u71e5\u7684\u822a\u7a7a\u6570\u636e\u67e5\u8be2\u529f\u80fd\u3002\u5b83\u6ca1\u6709\u8bd5\u56fe\u4e0e FlightRadar24 \u7b49\u4e13\u4e1a\u5e94\u7528\u6bd4\u62fc\u6570\u636e\u8be6\u5b9e\u5ea6\uff0c\u800c\u662f\u7cbe\u51c6\u5207\u4e2d\u4e86\u201c\u95e8\u5916\u6c49\u7684\u597d\u5947\u5fc3\u201d\u2014\u2014\u7528\u6237\u53ea\u60f3\u77e5\u9053\u201c\u5934\u9876\u4e0a\u90a3\u67b6\u98de\u673a\u662f\u4ec0\u4e48\u201d\uff0c\u800c\u4e0d\u662f\u5b66\u4e60\u590d\u6742\u7684\u822a\u56fe\u3002\u8fd9\u79cd\u51cf\u6cd5\u505a\u5f97\u975e\u5e38\u5230\u4f4d\uff1a\u4ee5\u90ae\u7f16\u4e3a\u4e2d\u5fc3\u7684\u4ea4\u4e92\u65b9\u5f0f\u6781\u5927\u964d\u4f4e\u4e86\u4f7f\u7528\u95e8\u69db\uff0c\u96f7\u8fbe\u626b\u63cf\u7684\u89c6\u89c9\u53cd\u9988\u5219\u8ba9\u67e5\u8be2\u8fc7\u7a0b\u672c\u8eab\u6210\u4e3a\u4e00\u79cd\u201c\u5a31\u4e50\u201d\uff0c\u800c\u4e0d\u662f\u4e00\u9879\u4efb\u52a1\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u4ea7\u54c1\u7684\u8f6f\u808b\u4e5f\u5f88\u660e\u663e\u2014\u2014\u5b83\u672c\u8d28\u4e0a\u662f\u4e00\u4e2a\u4e00\u6b21\u6027\u67e5\u8be2\u5de5\u5177\uff0c\u7f3a\u4e4f\u7559\u4f4f\u7528\u6237\u7684\u9ecf\u6027\u3002\u76ee\u524d\u8bc4\u8bba\u533a\u6700\u5f3a\u70c8\u7684\u9700\u6c42\u201c\u63a8\u9001\u901a\u77e5\u201d\u6070\u597d\u6307\u5411\u4e86\u8fd9\u4e00\u70b9\uff1a\u53ea\u6709\u8ba9\u7528\u6237\u4e0e\u5934\u9876\u7684\u201c\u4e0d\u671f\u800c\u9047\u201d\u4ea7\u751f\u6301\u7eed\u8fde\u63a5\uff0c\u4ea7\u54c1\u624d\u80fd\u4ece\u201c\u6709\u8da3\u7684\u5c0f\u73a9\u5177\u201d\u8fdb\u5316\u4e3a\u201c\u6709\u4f7f\u7528\u4e60\u60ef\u7684\u5de5\u5177\u201d\u3002\u6b64\u5916\uff0c\u6570\u636e\u4f9d\u8d56\u4e8e\u793e\u533a ADS-B \u7f51\u7edc\uff0c\u5728\u504f\u8fdc\u5730\u533a\u7684\u8986\u76d6\u7cbe\u5ea6\u548c\u5ef6\u8fdf\u53ef\u80fd\u6210\u4e3a\u4f53\u9a8c\u74f6\u9888\u3002\u4f5c\u4e3a\u5f00\u53d1\u8005\u53e3\u4e2d\u7684\u201c\u975e\u5546\u4e1a\u526f\u9879\u76ee\u201d\uff0c\u5b83\u7684\u6d6a\u6f2b\u6c14\u8d28\u662f\u6700\u5927\u7684\u5356\u70b9\uff0c\u4e5f\u662f\u5546\u4e1a\u5316\u7684\u6700\u5927\u969c\u788d\u2014\u2014\u5982\u4f55\u5728\u4e0d\u7834\u574f\u201c\u4e1a\u4f59\u96f7\u8fbe\u6d6a\u6f2b\u201d\u7684\u524d\u63d0\u4e0b\u589e\u503c\uff0c\u662f\u540e\u7eed\u9700\u8981\u601d\u8003\u7684\u95ee\u9898\u3002\u603b\u7684\u6765\u8bf4\uff0c\u8fd9\u662f\u4e00\u4e2a\u4f18\u96c5\u800c\u4e13\u6ce8\u7684\u201c\u5c0f\u786e\u5e78\u201d\u5f0f\u5de5\u5177\uff0c\u5b8c\u7f8e\u8be0\u91ca\u4e86\u201c\u5c11\u5373\u662f\u591a\u201d\u7684\u8bbe\u8ba1\u54f2\u5b66\uff0c\u4f46\u80fd\u5426\u4ece\u73a9\u5177\u53d8\u6210\u65e5\u5e38\uff0c\u53d6\u51b3\u4e8e\u5f00\u53d1\u8005\u80fd\u5426\u5728\u7b80\u6d01\u4e0e\u529f\u80fd\u4e4b\u95f4\u627e\u5230\u5de7\u5999\u7684\u5e73\u8861\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Tinfoil Pigeons<\/span>\n                <\/div>\n<div class=\"comment-content\">What plane is flying over my house? Tinfoil Pigeons is a live radar scope: enter your postcode and see the flights overhead right now, then tap one to find out what it is.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hi Product Hunt. I built this because every flight tracker is a Google map, and I wanted the romance of a real radar, the sweep, the phosphor glow, the blips fading between passes. Type your postcode and you are the dot in the middle. Tap anything overhead to find out what it is.<\/p>\n<p>It is a non commercial side project built on Astro and Cloudflare, with positions from the community ADS-B network. Would love your feedback, and your weirdest local sighting.<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>So ive opened it in the background, will it ping me or send me a notification when a plane travels above me? BTW nice one. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@shahmeer_baloch1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@shahmeer_baloch1<\/a>&nbsp;Ah amazing thanks for the message. At the moment the site won&#8217;t ping a notification when something enters your airspace &#8211; however I can certainly work that into the next update \ud83d\ude42<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The postcode-first approach is what makes this click. Instead of opening a full flight tracker, you get a simple answer to what\u2019s above you right now, which feels much more casual and fun.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@farrukh_butt1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@farrukh_butt1<\/a>&nbsp;Thanks Farrukh &#8211; I really appreciate your comment. Glad you&#8217;re enjoying it<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@chris_ward9\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"chris_ward9\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@chris_ward9<\/a> Excellent work on this. Every time I spotted a plane flying above, I would always say to myself &#8211; &#8220;Wish I could know what flight that is.&#8221; I can do that now.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tanoy27\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tanoy27<\/a>&nbsp;Hey Tanoy, ah thank you that&#8217;s exceedingly kind of you<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Sending this to my friend who always wanted to be a pilot and nerds over this. Thanks for building!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@arathy_kushalappa1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@arathy_kushalappa1<\/a>&nbsp;Hey Arathy, ah amazing thank you for the lovely feedback<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The retro radar aesthetic is a perfect fit for this. Way more fun than a boring list of flights.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vlad_zabavskiy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vlad_zabavskiy<\/a>&nbsp;Thanks Vlad &#8211; so glad you&#8217;re enjoying<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Love this. As a pilot, history buff, and aviation geek, I totally nerd out on this kind of stuff. Very cool UX. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@ron_white\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ron_white<\/a>&nbsp;Thanks Ron &#8211; I&#8217;ve really enjoyed watching all the military aircraft this morning over the North West of the UK<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#14<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/FIW46O6GVDDJZP\" class=\"app-title\">MiMo Code<\/a><\/p>\n<div class=\"one-liner\">A coding agent with explicit long-term memory architecture<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">113<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>MiMo Code \u662f\u4e00\u6b3e\u4e3a\u957f\u5468\u671f\u7f16\u7801\u4efb\u52a1\u8bbe\u8ba1\u7684\u5f00\u6e90\u7ec8\u7aefAI\u7f16\u7a0b\u52a9\u624b\uff0c\u901a\u8fc7\u72ec\u7acb\u68c0\u67e5\u70b9\u5b50\u4ee3\u7406\u4e0e\u663e\u5f0f\u957f\u671f\u8bb0\u5fc6\u67b6\u6784\uff0c\u89e3\u51b3AI\u5728\u957f\u65f6\u95f4\u4f1a\u8bdd\u4e2d\u4e0a\u4e0b\u6587\u7a97\u53e3\u5d29\u6e83\u548c\u8bb0\u5fc6\u4e22\u5931\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/952b4dfb-db42-422d-a873-932ccb1bee02.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e9c81e10-c6ec-4c4b-8cbc-1c0036527bb5.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/67140837-1cce-4c9e-8b89-9bc9125f1d87.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/5785c98e-057f-4ef4-94bc-6900c3e89b0d.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/5b69e985-fa02-4b28-87ae-421ac6146cda.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f93de391-7fad-4ce2-8c59-d1aa8a02110d.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f2ec5a3f-d123-4633-807a-180aaa3fd749.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/a4a149d5-3fb7-455c-93e1-c0a685b2cf86.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/456fcfb2-784a-4c57-89b7-9cab22eca23b.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Open Source<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">Development<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u7f16\u7a0b\u52a9\u624b<\/span><br \/>\n            <span class=\"tag\">\u957f\u671f\u8bb0\u5fc6<\/span><br \/>\n            <span class=\"tag\">\u5f00\u6e90<\/span><br \/>\n            <span class=\"tag\">\u7ec8\u7aef\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u4e0a\u4e0b\u6587\u7ba1\u7406<\/span><br \/>\n            <span class=\"tag\">\u68c0\u67e5\u70b9<\/span><br \/>\n            <span class=\"tag\">\u4ee3\u7801\u91cd\u6784<\/span><br \/>\n            <span class=\"tag\">\u5de5\u4f5c\u6d41\u81ea\u52a8\u5316<\/span><br \/>\n            <span class=\"tag\">OpenCode<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u8ba4\u53ef\u65e9\u671f\u68c0\u67e5\u70b9\u7b56\u7565\u4f18\u4e8e\u4e34\u8fd1\u4e0a\u4e0b\u6587\u538b\u7f29\u7684\u505a\u6cd5\uff0c\u4f46\u666e\u904d\u62c5\u5fe7\u201c\u9519\u8bef\u8bb0\u5fc6\u201d\uff1a\u82e5\u68c0\u67e5\u70b9\u8bb0\u5f55\u4e86\u9519\u8bef\u5047\u8bbe\uff0c\u5982\u4f55\u9632\u6b62\u5176\u88ab\u63d0\u5347\u4e3a\u6301\u4e45\u8bb0\u5fc6\uff1f\u8bc4\u8bba\u5e0c\u671b\u533a\u5206\u4efb\u52a1\u5c40\u90e8\u72b6\u6001\u4e0e\u53ef\u590d\u7528\u7684MEMORY.md\u77e5\u8bc6\uff0c\u5e76\u5f3a\u8c03\u65e7\u4e0a\u4e0b\u6587\u4f55\u65f6\u6709\u5bb3\u3001\u5982\u4f55\u5ba1\u8ba1\u548c\u91cd\u7f6e\u8bb0\u5fc6\u662f\u5173\u952e\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                MiMo Code \u7684\u5b9a\u4f4d\u806a\u660e\u5730\u5207\u5165\u4e86\u4e00\u4e2a\u88ab\u5ffd\u89c6\u7684\u75db\u70b9\uff1aAI\u7f16\u7a0b\u52a9\u624b\u5728\u957f\u4efb\u52a1\u4e0b\u7684\u201c\u8ba4\u77e5\u5d29\u6e83\u201d\u3002\u5176\u6838\u5fc3\u521b\u65b0\u2014\u2014\u72ec\u7acb\u5199\u68c0\u67e5\u70b9\u5b50\u4ee3\u7406\u2014\u2014\u5e76\u975e\u590d\u6742\u7b97\u6cd5\uff0c\u800c\u662f\u5de5\u7a0b\u4e0a\u7684\u52a1\u5b9e\u53d6\u820d\uff1a\u5728\u4e0a\u4e0b\u6587\u5065\u5eb7\u65f6\u4e3b\u52a8\u6c89\u6dc0\u8bb0\u5fc6\uff0c\u800c\u975e\u5728\u5185\u5b58\u544a\u6025\u65f6\u88ab\u52a8\u538b\u7f29\u3002\u8fd9\u907f\u514d\u4e86\u4f20\u7edf\u6458\u8981\u5f0f\u538b\u7f29\u5728\u9ad8\u538b\u529b\u4e0b\u7684\u4fe1\u606f\u5931\u771f\uff0c\u4ece\u6839\u672c\u4e0a\u63d0\u5347\u4e86\u957f\u4efb\u52a1\u7a33\u5b9a\u6027\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u7136\u800c\uff0c\u4ef7\u503c\u5151\u73b0\u7684\u5173\u952e\u5728\u4e8e\u201c\u8bb0\u5fc6\u8d28\u91cf\u201d\u800c\u975e\u201c\u8bb0\u5fc6\u65f6\u957f\u201d\u3002\u7528\u6237\u8bc4\u8bba\u4e2d\u7684\u201c\u8d1f\u8bb0\u5fc6\u201d\u98ce\u9669\u76f4\u6307\u672c\u8d28\uff1a\u4e00\u4e2a\u8bb0\u5f55\u4e86\u9519\u8bef\u91cd\u6784\u5047\u8bbe\u7684\u68c0\u67e5\u70b9\uff0c\u5982\u679c\u88ab\u673a\u68b0\u5730\u5199\u5165\u6301\u4e45\u8bb0\u5fc6\uff0c\u53ef\u80fd\u6bd4\u6ca1\u6709\u8bb0\u5fc6\u66f4\u5177\u7834\u574f\u6027\u3002MiMo Code \u9700\u8981\u660e\u786e\u56de\u7b54\uff1a\u5982\u4f55\u8bbe\u8ba1\u9a8c\u8bc1\u673a\u5236\u6765\u533a\u5206\u201c\u4e2d\u95f4\u6001\u201d\u4e0e\u201c\u53ef\u9760\u6a21\u5f0f\u201d\uff1f\u4efb\u52a1\u5c40\u90e8\u68c0\u67e5\u70b9\u80fd\u5426\u5177\u5907\u201c\u8fc7\u671f\u201d\u6216\u201c\u56de\u6eda\u201d\u5c5e\u6027\uff1f\u76ee\u524d\u4ecb\u7ecd\u7684\u201c\u80cc\u666f\u8fdb\u7a0b\u63d0\u53d6\u6a21\u5f0f\u201d\u548c\u201cDream pass\u201d\u4ecd\u663e\u6a21\u7cca\u2014\u2014\u5982\u679c\u8fc7\u6ee4\u4fe1\u53f7-\u566a\u58f0\u7684\u89c4\u5219\u4e0d\u900f\u660e\uff0c\u957f\u671f\u6267\u884c\u540e\u8bb0\u5fc6\u5e93\u53ef\u80fd\u6f14\u53d8\u6210\u96be\u4ee5\u5ba1\u8ba1\u7684\u201c\u9ed1\u7bb1\u4ed3\u5e93\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u5bf9\u4e8e\u5f00\u53d1\u8005\u800c\u8a00\uff0c\u8be5\u5de5\u5177\u7684\u4ef7\u503c\u951a\u70b9\u4e0d\u662f\u201c\u66f4\u806a\u660e\u7684AI\u201d\uff0c\u800c\u662f\u201c\u66f4\u53ef\u63a7\u7684\u8bb0\u5fc6\u7cfb\u7edf\u201d\u3002\u5b83\u6210\u529f\u89e3\u51b3\u4e86\u201c\u8bb0\u4e0d\u4f4f\u201d\u7684\u95ee\u9898\uff0c\u4f46\u201c\u8bb0\u5f97\u5bf9\u201d\u624d\u662f\u4e0b\u4e00\u9636\u6bb5\u7684\u8bd5\u91d1\u77f3\u3002\u5efa\u8bae\u5728\u4ea7\u54c1\u8def\u7ebf\u56fe\u4e2d\u4f18\u5148\u5f15\u5165\u8bb0\u5fc6\u7684\u53ef\u89c6\u5316\u5ba1\u8ba1\u9762\u677f\uff08\u5982\u68c0\u67e5\u70b9\u65f6\u95f4\u7ebf\u3001\u9519\u8bef\u6807\u6ce8\u4e0e\u56de\u6eda\u5165\u53e3\uff09\uff0c\u5426\u5219\u5f53\u9879\u76ee\u89c4\u6a21\u81a8\u80c0\u65f6\uff0c\u8bb0\u5fc6\u53cd\u800c\u53ef\u80fd\u6210\u4e3a\u65b0\u7684\u6280\u672f\u503a\u52a1\u6e90\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">MiMo Code<\/span>\n                <\/div>\n<div class=\"comment-content\">MiMo Code is an open-source terminal AI coding agent built on OpenCode. Optimized for long-horizon tasks, it uses an independent checkpoint subagent to manage unbounded context windows, executes sandbox workflows, and evolves via scheduled maintenance.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hi everyone!<\/p>\n<p>MiMo Code is based on <a href=\"https:\/\/www.producthunt.com\/products\/opencode\" target=\"_blank\" rel=\"noopener\">@opencode<\/a>, but puts more effort into handling long-running sessions.<\/p>\n<p>Instead of letting the main agent manage its own memory, it uses a separate writer subagent that periodically writes structured checkpoints on a schedule.<\/p>\n<p>A key design choice is that these checkpoints are triggered <a href=\"https:\/\/mimo.xiaomi.com\/blog\/mimo-code-long-horizon\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">relatively early<\/a>, well before the context window fills up. This avoids having to do heavy compression under high context pressure.<\/p>\n<p>When the window eventually approaches its limit, the system rebuilds the working context from the accumulated checkpoints and project memory, rather than relying on increasingly unreliable summarization.<\/p>\n<p>It also runs background processes to extract reusable patterns from past work over time.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The early checkpoint idea makes sense: summarize while the context is still healthy, not when the window is already under pressure.<\/p>\n<p>The hard part I\u2019d worry about is negative memory. If a checkpoint captures a wrong assumption during a long refactor, how does MiMo Code prevent that from being promoted into durable project memory? Do you keep task-local checkpoints separate from reusable <a href=\"http:\/\/MEMORY.md\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">MEMORY.md<\/a>-style knowledge until a later validation pass?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Interesting angle. For agent memory, the thing I&#8217;d want to see is how it stays reviewable: what gets remembered, what can be reset, and how a dev can tell when old context is hurting more than helping.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The checkpoint subagent idea is the most interesting part to me. Long-horizon coding agents fall apart when context management is implicit. How are you deciding what gets written into long-term memory versus kept as task-local state?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Long coding sessions usually fall apart when context gets compressed too late. The separate checkpoint subagent feels like a practical fix: less magic, more reliable memory when the task stretches for hours.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Long-term memory in a coding agent is the hard part. When a function gets refactored acroos 10 files, does MiMo-Code update its stored understanding automatically, or do you need to manually invalidate stale context?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The separate writer subagent for periodic checkpointing is clever. Triggering early before context pressure builds means you&#8217;re compressing while you still have bandwidth, not scrambling when the window&#8217;s nearly full. The naive approach of letting the main agent summarize itself tends to fail exactly when you need it most. When the background process extracts reusable patterns, how do you filter signal from noise across sessions?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>the memory architecture is the part that matters. every AI tool I&#8217;ve used loses everything the moment you close the session and you start from scratch every time. the checkpoint approach where it saves what it learned before the context fills up instead of scrambling to compress after is a smarter design. curious how this scales when projects get really large<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Wrong memory seems more dangerous than no memory on long refactors. If a checkpoint records a bad assumption, can I mark it as wrong before it gets promoted into <a href=\"http:\/\/MEMORY.md\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">MEMORY.md<\/a>, or is cleanup left to the later Dream pass?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#15<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/CZC6HFUJFJLART\" class=\"app-title\">Dropmatico<\/a><\/p>\n<div class=\"one-liner\">Drop. Pick. Done.<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">109<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Dropmatico\u662f\u4e00\u6b3e\u4e00\u7ad9\u5f0f\u56fe\u50cf\u5de5\u4f5c\u6d41\u5de5\u5177\uff0c\u901a\u8fc7\u5ba2\u6237\u7aef\u5904\u7406\u6280\u672f\uff0c\u8ba9\u7528\u6237\u4e00\u6b21\u6027\u5b8c\u6210\u6279\u91cf\u56fe\u7247\u7684\u5c3a\u5bf8\u8c03\u6574\u3001\u538b\u7f29\u548c\u683c\u5f0f\u8f6c\u6362\uff0c\u652f\u630190\u591a\u79cd\u9884\u8bbe\u548c34\u4e2a\u5e73\u53f0\uff0c\u89e3\u51b3\u4e86\u8de8\u5e73\u53f0\u53d1\u5e03\u65f6\u53cd\u590d\u624b\u52a8\u8c03\u6574\u56fe\u7247\u5c3a\u5bf8\u548c\u683c\u5f0f\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/3e77e094-a6ab-449a-8628-6f5a9aea891c.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/9f1c4637-724d-4f43-98dd-b54952035db6.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/eab3d9e6-3696-43e3-a7eb-aeb82384e3d8.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/db3c7984-452c-4a36-a960-097bcc9352d7.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b08705ad-d75f-4341-9fc8-40e8115c0ebb.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/902f27bb-3768-43bd-a509-2421ebfd04b5.jpeg?auto=format\" data-video-url=\"https:\/\/www.youtube.com\/watch?v=xqx_tVpmMEo\"><source src=\"https:\/\/www.youtube.com\/watch?v=xqx_tVpmMEo\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Design Tools<\/span><br \/>\n            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">E-Commerce<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u56fe\u50cf\u5904\u7406<\/span><br \/>\n            <span class=\"tag\">\u6279\u91cf\u5904\u7406<\/span><br \/>\n            <span class=\"tag\">\u591a\u5e73\u53f0\u9002\u914d<\/span><br \/>\n            <span class=\"tag\">\u5ba2\u6237\u7aef\u5904\u7406<\/span><br \/>\n            <span class=\"tag\">\u9690\u79c1\u5b89\u5168<\/span><br \/>\n            <span class=\"tag\">\u5c3a\u5bf8\u8c03\u6574<\/span><br \/>\n            <span class=\"tag\">\u683c\u5f0f\u8f6c\u6362<\/span><br \/>\n            <span class=\"tag\">\u56fe\u50cf\u538b\u7f29<\/span><br \/>\n            <span class=\"tag\">\u7535\u5546\u9884\u8bbe<\/span><br \/>\n            <span class=\"tag\">\u8425\u9500\u5de5\u5177<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u5176\u9690\u79c1\u4f18\u52bf\uff08\u6587\u4ef6\u4e0d\u4e0a\u4f20\u670d\u52a1\u5668\uff09\u548c\u7535\u5546\u5e73\u53f0\u9884\u8bbe\u7684\u5b9e\u7528\u6027\u3002\u5efa\u8bae\u5173\u6ce8\u672a\u6765AI\u4ee3\u7406\u63d2\u4ef6\u96c6\u6210\u3002\u5b98\u65b9\u56de\u5e94\u79f0\u9884\u8bbe\u66f4\u65b0\u91c7\u7528\u201c\u81ea\u52a8\u68c0\u6d4b+\u4eba\u5de5\u5ba1\u6838\u201d\u673a\u5236\uff0c\u5e76\u65b0\u589e\u4e86\u201c\u4fdd\u6301\u539f\u59cb\u5c3a\u5bf8\u201d\u529f\u80fd\u4ee5\u6ee1\u8db3\u7279\u6b8a\u9700\u6c42\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Dropmatico\u5207\u4e2d\u4e86\u4e00\u4e2a\u771f\u5b9e\u4f46\u975e\u666e\u9002\u7684\u75db\u70b9\u2014\u2014\u591a\u5e73\u53f0\u3001\u591a\u5c3a\u5bf8\u7684\u91cd\u590d\u6027\u56fe\u50cf\u5904\u7406\u3002\u5176\u6838\u5fc3\u4ef7\u503c\u5e76\u975e\u6280\u672f\u98a0\u8986\uff0c\u800c\u662f\u5c06\u201c\u5c3a\u5bf8\u8c03\u6574+\u538b\u7f29+\u683c\u5f0f\u8f6c\u6362\u201d\u8fd9\u4e09\u4e2a\u672c\u5e94\u4e00\u4f53\u5316\u7684\u64cd\u4f5c\u5c01\u88c5\u6210\u5355\u4e00\u5de5\u4f5c\u6d41\uff0c\u5e76\u9488\u5bf9\u7535\u5546\uff08Amazon\u3001Etsy\uff09\u8fd9\u7c7b\u88ab\u4e3b\u6d41\u5de5\u5177\u5ffd\u89c6\u7684\u7070\u8272\u5730\u5e26\u505a\u4e86\u7cbe\u51c6\u9884\u8bbe\u3002\u8fd9\u672c\u8d28\u4e0a\u662f\u201c\u5782\u76f4\u573a\u666f\u7684\u6548\u7387\u4f18\u5316\u201d\uff0c\u800c\u975e\u201c\u56fe\u50cf\u5904\u7406\u7684\u6280\u672f\u7a81\u7834\u201d\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4ea7\u54c1\u6700\u5927\u7684\u62a4\u57ce\u6cb3\u5e76\u975e\u529f\u80fd\u672c\u8eab\uff0c\u800c\u662f\u201c\u65e0\u670d\u52a1\u5668\u201d\u5e26\u6765\u7684\u9690\u79c1\u5356\u70b9\uff0c\u8fd9\u5bf9\u5904\u7406\u4ea7\u54c1\u56fe\u3001\u8425\u9500\u7d20\u6750\u7b49\u5546\u4e1a\u654f\u611f\u5185\u5bb9\u7684\u7528\u6237\u800c\u8a00\uff0c\u662f\u51b3\u5b9a\u6027\u7684\u5dee\u5f02\u5316\u4f18\u52bf\u3002\u4f46\u7b56\u7565\u4e5f\u5b58\u5728\u660e\u663e\u5c40\u9650\uff1a\u4e25\u683c\u7684\u524d\u7aef\u5904\u7406\u9650\u5236\u4e86\u6587\u4ef6\u4f53\u79ef\uff08\u6700\u5927100MB\uff09\u548c\u590d\u6742\u64cd\u4f5c\u80fd\u529b\uff0c\u96be\u4ee5\u5438\u5f15\u4e13\u4e1a\u8bbe\u8ba1\u5e08\uff1b\u4f9d\u8d56\u9884\u8bbe\u5e93\u7684\u7ef4\u62a4\u51c6\u786e\u6027\uff0c\u81ea\u52a8\u68c0\u6d4b+\u4eba\u5de5\u6279\u51c6\u7684\u673a\u5236\u867d\u4e25\u8c28\u5374\u589e\u52a0\u4e86\u8fd0\u8425\u6210\u672c\u3002\u6b64\u5916\uff0c16\u5f20\u7684\u6279\u91cf\u5904\u7406\u4e0a\u9650\uff0c\u5bf9MCN\u6216\u5927\u578b\u54c1\u724c\u6765\u8bf4\u4ecd\u5c5e\u201c\u5c0f\u4f5c\u574a\u201d\u7ea7\u522b\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u771f\u6b63\u7684\u98ce\u9669\u5728\u4e8e\u540c\u8d28\u5316\u7ade\u4e89\u3002\u8fd9\u7c7b\u5de5\u5177\u95e8\u69db\u4e0d\u9ad8\uff0c\u4efb\u4f55\u201c\u56fe\u7247\u6279\u91cf\u5904\u7406\u5668\u201d\u90fd\u53ef\u4ee5\u5feb\u901f\u590d\u5236\u9884\u8bbe\u5e93\uff0c\u5e76\u7528\u201c\u4e91+\u672c\u5730\u201d\u7684\u6df7\u5408\u65b9\u6848\u7ed5\u8fc7\u6587\u4ef6\u4f53\u79ef\u9650\u5236\u3002Dropmatico\u82e5\u4e0d\u80fd\u5728\u672a\u6765\u5c06\u201c\u9690\u79c1\u201d\u8f6c\u5316\u4e3a\u53ef\u6301\u7eed\u7684\u5546\u4e1a\u6a21\u5f0f\uff08\u5982\u4f01\u4e1a\u7ea7\u79c1\u6709\u5316\u90e8\u7f72\uff09\uff0c\u6216\u901a\u8fc7\u793e\u533a\u4f17\u5305\u6784\u5efa\u9884\u8bbe\u751f\u6001\u7684\u7ade\u4e89\u58c1\u5792\uff0c\u5f88\u5bb9\u6613\u6ca6\u4e3a\u529f\u80fd\u53c2\u8003\u800c\u975e\u5fc5\u9700\u5de5\u5177\u3002\u76ee\u524d\u770b\uff0c\u5b83\u662f\u4e00\u4e2a\u4f18\u79c0\u4f46\u5c0f\u4f17\u7684\u201c\u6548\u7387\u63d2\u4ef6\u201d\uff0c\u800c\u975e\u5e73\u53f0\u7ea7\u4ea7\u54c1\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Dropmatico<\/span>\n                <\/div>\n<div class=\"comment-content\">Dropmatico is the image workflow tool that resizes, compresses, and converts in one pass, across 90+ presets and 34 platforms (Instagram, LinkedIn, X, Snapchat, Substack, Amazon, Etsy, Noon, Flipkart, Shopify, and more). One image, every platform. Or every image, one platform. Either way, one pass.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt \ud83d\udc4b<\/p>\n<p>We built Dropmatico because we were tired of the hourly ritual. Open a marketing image, resize for Instagram, save as. Resize for LinkedIn, save as. Resize for X. Resize for our Amazon listing. Resize for Etsy. Multiple exports, multiple chances to mess up a dimension or format, every single time we posted.<\/p>\n<p>So we built the tool we wished existed.<\/p>\n<p>Drop one image, and Dropmatico exports it ready for every platform you post on&#8230; 90+ presets across 34 platforms, including the marketplaces other tools ignore (Amazon, Etsy, Noon, Flipkart, Ajio). Or run a batch of 16 images through one platform&#8217;s spec. Resize, compress, and format conversion all happen in one pass, on a real-time canvas with unmatched security. Files never touch a server.<\/p>\n<p>A few things we obsessed over:<br \/>Real-time canvas: you see the crop as you adjust, no &#8220;submit and wait&#8221; loop.<br \/>Client-side processing: up to 100MB per file, no uploads, no queue.<br \/>Bulk Processor: 16 images at a time through any preset.<br \/>Format conversion: HEIC, PNG, WebP, AVIF, JPEG, all in the same pass.<\/p>\n<p>A small story we&#8217;re proud of: last month we shipped &#8220;Keep Original Size.&#8221; A user in Canada wrote in and said, &#8220;there was no way to say, just keep what I uploaded.&#8221; Their photos were already at the right dimensions, they only needed the format flip and the compression. So we added a workflow-level toggle that skips resizing entirely. Shipped 10 days after the email landed.<\/p>\n<p>That&#8217;s the loop we want to keep running on PH today: tell us what&#8217;s broken in your image workflow and we&#8217;ll build it.<\/p>\n<p>A question for the community: what&#8217;s the one image-prep task that still eats your time every week? We&#8217;ll be in the comments all day.<\/p>\n<p>Team Dropmatico<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The privacy angle is underrated. Keeping files on the user&#8217;s device instead of uploading them to servers will matter for many businesses. Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@marianna_tymchuk\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@marianna_tymchuk<\/a>&nbsp;&#8211; That was a big part of why we built it this way. For a lot of teams and individuals, product shots and NDA or legal assets are sensitive, so keeping everything on your own device just felt like the safer default. Thanks a lot, appreciate it.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Good job on this idea, it is definitely a painpoint, at least for me.<\/p>\n<\/p>\n<p>I guess I&#8217;ll be waiting for when the agent plugin comes out (if it does), right?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thanks <a href=\"https:\/\/www.producthunt.com\/@peterz_shu\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"peterz_shu\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@peterz_shu<\/a> , glad it hits home for you too. An agent plugin isn&#8217;t something we&#8217;ve built yet, but it&#8217;s an interesting thought. Out of curiosity, what would you want it to do? Always helps to hear how people would actually use it before we commit to building.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>2<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The marketplace presets are a smart detail. Social sizes are easy to find, but Amazon, Etsy, Noon, Flipkart, and Shopify images are where the prep work usually gets annoying fast.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@farrukh_butt1\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"farrukh_butt1\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@farrukh_butt1<\/a> &#8211; Marketplaces are really challenging, you&#8217;re right. We kept running into the same thing. Social sizes are easier to catch since they&#8217;re muscle memory for most people who post often, but marketplaces each have their own rules on dimensions, file size, and background, and they change them more often than you&#8217;d think. Taking that prep work off people&#8217;s plates was the whole goal.<\/p>\n<p>We also added custom sizes, so if you&#8217;re posting to a niche platform or your own website or app, you can set your own dimensions instead of being stuck with the presets.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>One image, every platform is a strong promise. I like that you\u2019re treating resizing, compressing, and converting as one workflow rather than separate utilities. Are the presets maintained manually, or updated when platforms change specs?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Thanks <a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>. We figured most people do resize, compress, and convert in one go, so we put them in one workflow instead of three separate tools.<\/p>\n<p>On the presets, it&#8217;s two-pass. We auto-detect when a platform changes its specs and stage the update. Then a human approves it before it goes live. We didn&#8217;t want an automated parse to quietly break people&#8217;s exports, so we keep a check in between.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The client-side processing approach is a huge win. Faster workflows and better privacy are a great combination.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@roman_burdyga\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@roman_burdyga<\/a>&nbsp;Thanks, glad that stood out. Keeping it all in the browser meant no uploads, so your files stay on your machine and nothing slows down waiting on a server.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#16<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/MW5E43FOUBRG6R\" class=\"app-title\">Verol<\/a><\/p>\n<div class=\"one-liner\">Stop AI hallucinations<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">93<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Verol \u662f\u4e00\u6b3e\u4e3a ChatGPT\u3001Claude \u548c Gemini \u7b49 AI \u804a\u5929\u5de5\u5177\u63d0\u4f9b\u72ec\u7acb\u9a8c\u8bc1\u5c42\u7684\u6d4f\u89c8\u5668\u63d2\u4ef6\uff0c\u901a\u8fc7\u5b9e\u65f6\u7f51\u9875\u68c0\u7d22\u548c\u540e\u53f0\u7ba1\u9053\u89e3\u6790\uff0c\u9010\u4e00\u9a8c\u8bc1 AI \u56de\u7b54\u4e2d\u7684\u6bcf\u4e2a\u58f0\u660e\uff0c\u7ed9\u51fa\u53ef\u4fe1\u5ea6\u8bc4\u5206\u548c\u53ef\u70b9\u51fb\u6765\u6e90\uff0c\u4ece\u800c\u89e3\u51b3\u7528\u6237\u5728\u4f9d\u8d56 AI \u8fdb\u884c\u7814\u7a76\u548c\u5199\u4f5c\u65f6\u65e0\u6cd5\u8fa8\u522b\u5e7b\u89c9\u3001\u88ab\u8feb\u53cd\u590d\u624b\u52a8\u6838\u5b9e\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/fc1d3ad1-9375-42c3-80bd-0303e37f96d6.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/Saz2AYluZMs\"><source src=\"https:\/\/youtu.be\/Saz2AYluZMs\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/936ceafa-09a2-47d5-82f9-07578a4b87a1.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/415f2f80-3884-4a7f-ab03-7e36bede1c34.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/46b403d8-4538-4936-8077-205f63f385af.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/295ae87c-0f22-4ded-b3f1-1e728c8933ec.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d70479c6-5cfa-48e9-a552-ab7a987d9dea.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Chrome Extensions<\/span><br \/>\n            <span class=\"tag\">Productivity<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u5e7b\u89c9\u9a8c\u8bc1<\/span><br \/>\n            <span class=\"tag\">AI\u53ef\u4fe1\u5ea6\u68c0\u6d4b<\/span><br \/>\n            <span class=\"tag\">\u4e8b\u5b9e\u6838\u67e5\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u6d4f\u89c8\u5668\u63d2\u4ef6<\/span><br \/>\n            <span class=\"tag\">\u5b9e\u65f6\u7f51\u9875\u641c\u7d22<\/span><br \/>\n            <span class=\"tag\">\u58f0\u660e\u7ea7\u9a8c\u8bc1<\/span><br \/>\n            <span class=\"tag\">\u53ef\u4fe1\u5ea6\u8bc4\u5206<\/span><br \/>\n            <span class=\"tag\">\u5927\u8bed\u8a00\u6a21\u578b\uff08LLM\uff09\u8f85\u52a9<\/span><br \/>\n            <span class=\"tag\">AI\u8d28\u91cf\u63a7\u5236<\/span><br \/>\n            <span class=\"tag\">\u72ec\u7acb\u9a8c\u8bc1\u5c42<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u53ef\u72ec\u7acb\u9a8c\u8bc1\u7684\u91cd\u8981\u6027\uff0c\u7279\u522b\u8d5e\u8d4fVerol\u5728\u65e0\u6cd5\u9a8c\u8bc1\u65f6\u4f1a\u8bda\u5b9e\u544a\u77e5\u201c\u65e0\u6cd5\u627e\u5230\u6765\u6e90\u201d\u800c\u975e\u4f2a\u9020\u7ed3\u679c\u3002\u4e3b\u8981\u95ee\u9898\u96c6\u4e2d\u5728\uff1a1\uff09\u5b9e\u65f6\u9a8c\u8bc1\u6a21\u5f0f\u5bf9\u5ef6\u8fdf\u548c\u67e5\u8be2\u914d\u989d\u7684\u538b\u529b\uff0c\u5b98\u65b9\u56de\u5e94\u63d0\u4f9b\u201c\u751f\u6001\u6a21\u5f0f\u201d\u548c\u624b\u52a8\u6a21\u5f0f\u9009\u62e9\uff1b2\uff09\u5bf9\u4ed8\u8d39\u6216\u767b\u5f55\u7c7b\u6765\u6e90\u65e0\u6cd5\u9a8c\u8bc1\uff1b3\uff09\u5bf9\u96be\u4ee5\u7f51\u7edc\u6838\u67e5\u7684\u58f0\u660e\uff08\u5982\u6570\u636e\u5206\u6b67\uff09\u5982\u4f55\u5904\u7406\uff0c\u5b98\u65b9\u56de\u5e94\u4ee5\u7f6e\u4fe1\u5ea6\u8bc4\u5206\u4fdd\u6301\u900f\u660e\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Verol \u5207\u4e2d\u7684\u662f\u5f53\u524d AI \u70ed\u6f6e\u4e2d\u6700\u88ab\u5ffd\u89c6\u7684\u201c\u4fe1\u4efb\u8d64\u5b57\u201d\u2014\u2014\u6a21\u578b\u5728\u56de\u7b54\u65f6\u6c38\u8fdc\u793c\u8c8c\u81ea\u4fe1\uff0c\u4f46\u5185\u5bb9\u53ef\u80fd\u5168\u662f\u5e7b\u89c9\u3002\u5b83\u7684\u4ef7\u503c\u4e0d\u5728\u4e8e\u201c\u5168\u5bf9\u201d\uff0c\u800c\u5728\u4e8e\u201c\u53ef\u8bc1\u4f2a\u201d\uff1a\u5c06 AI \u9ed1\u7bb1\u8f93\u51fa\u7684\u6a21\u7cca\u6574\u4f53\u62c6\u89e3\u4e3a\u53ef\u8ffd\u8e2a\u7684\u6bcf\u4e2a\u58f0\u660e\uff0c\u518d\u7528\u72ec\u7acb\u641c\u7d22\u7ba1\u9053\u6821\u9a8c\u3002\u8fd9\u672c\u8d28\u4e0a\u662f\u5bf9\u201cAI \u81ea\u7701\u201d\u903b\u8f91\u7684\u7ec8\u7ed3\u2014\u2014\u56e0\u4e3a\u8ba9\u6a21\u578b\u81ea\u5df1\u68c0\u67e5\u81ea\u5df1\u5c31\u50cf\u8ba9\u9a97\u5b50\u81ea\u5df1\u5766\u767d\uff0c\u7ed3\u679c\u53ea\u4f1a\u50ac\u751f\u66f4\u903c\u771f\u7684\u8c0e\u8a00\u3002Verol \u63d0\u4f9b\u7684\u7f6e\u4fe1\u5ea6\u8bc4\u5206\u548c\u201c\u65e0\u6cd5\u9a8c\u8bc1\u201d\u7684\u8bda\u5b9e\uff0c\u6bd4\u4efb\u4f55 AI \u751f\u6210\u7684\u5b8c\u7f8e\u5f15\u7528\u90fd\u66f4\u6709\u5b9e\u7528\u4ef7\u503c\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u4e0d\u5f97\u4e0d\u6307\u51fa\u51e0\u4e2a\u9690\u5fe7\uff1a\u4e00\u662f\u5546\u4e1a\u5316\u6a21\u5f0f\u8106\u5f31\u2014\u20145 \u6b21\u514d\u8d39\u989d\u5ea6\u540e\u6708\u8d39 4.99 \u7f8e\u5143\u8d77\u6b65\uff0c\u4f46\u5bf9\u4e8e\u91cd\u5ea6 AI \u7528\u6237\uff0c\u8fd9\u79cd\u201c\u6bcf\u6b21\u56de\u7b54\u90fd\u72ec\u7acb\u641c\u7d22\u6821\u9a8c\u201d\u7684\u67b6\u6784\u4e00\u65e6\u9891\u7e41\u4f7f\u7528\uff0c\u6210\u672c\u548c\u5ef6\u8fdf\u4f1a\u9661\u589e\uff0c\u7528\u6237\u53ef\u80fd\u5f88\u5feb\u9677\u5165\u8981\u4e48\u9891\u7e41\u5145\u503c\u3001\u8981\u4e48\u653e\u5f03\u9a8c\u8bc1\u7684\u7a98\u5883\u3002\u4e8c\u662f\u6280\u672f\u62a4\u57ce\u6cb3\u4e0d\u6df1\u2014\u2014\u672c\u8d28\u4e0a\u662f\u201c\u89e3\u6790\u56de\u7b54 + \u8c03\u7528\u641c\u7d22\u5f15\u64ce + \u6bd4\u5bf9\u7ed3\u679c\u201d\u7684\u7ba1\u9053\uff0c\u540c\u7c7b\u5de5\u5177\uff08\u5982 Perplexity \u7684\u5185\u7f6e\u9a8c\u8bc1\u6a21\u5f0f\u3001\u5404\u79cd AI \u4e8b\u5b9e\u6838\u67e5\u63d2\u4ef6\uff09\u5e76\u975e\u6ca1\u6709\u3002\u4e09\u662f\u5b83\u53ea\u80fd\u9a8c\u8bc1\u6709\u516c\u5f00\u7f51\u9875\u6570\u636e\u652f\u6491\u7684\u58f0\u660e\uff0c\u5bf9\u4e8e\u7528\u6237\u81ea\u8eab\u7684\u79c1\u6709\u6570\u636e\u3001\u865a\u6784\u6982\u5ff5\u6216\u7a7a\u6d1e\u610f\u89c1\u7c7b\u56de\u7b54\u4f5c\u7528\u6781\u5176\u6709\u9650\uff0c\u90a3\u4e9b\u201c\u6700\u5371\u9669\u7684\u5e7b\u89c9\u201d\uff08\u542c\u8d77\u6765\u5408\u7406\u4f46\u6765\u6e90\u662f\u6a21\u578b\u7f16\u9020\u7684\uff09\u4e5f\u6070\u597d\u591a\u662f\u57fa\u4e8e\u634f\u9020\u7ec6\u8282\uff0c\u800c\u8fd9\u4e9b\u7ec6\u8282\u5728\u771f\u5b9e\u7f51\u7edc\u4e2d\u6709\u65f6\u5e76\u4e0d\u5b58\u5728\u5bf9\u5e94\u9875\u9762\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u603b\u4f53\u800c\u8a00\uff0cVerol \u662f\u4e00\u4e2a\u6709\u660e\u786e\u573a\u666f\u4f46\u5728\u6280\u672f\u548c\u5546\u4e1a\u4e0a\u90fd\u9700\u5411\u66f4\u6df1\u5c42\u8fdb\u5316\u7684\u4ea7\u54c1\u3002\u5b83\u5728\u201cAI \u56de\u7b54\u4e4b\u540e\u201d\u63d0\u4f9b\u4e86\u4e00\u4e2a\u53ef\u9760\u4f46\u4e0d\u591f\u4f18\u96c5\u7684\u4e8b\u5b9e\u515c\u5e95\u65b9\u6848\uff0c\u672a\u6765\u80fd\u5426\u5b58\u6d3b\uff0c\u53d6\u51b3\u4e8e\u80fd\u5426\u771f\u6b63\u7406\u89e3\u7528\u6237\u9700\u6c42\u662f\u201c\u7701\u53bb\u624b\u52a8\u641c\u7d22\u7cbe\u529b\u201d\u800c\u975e\u201c\u4e3a\u6bcf\u6b21\u5bf9\u8bdd\u65b0\u5f00\u4e00\u6b21\u4eba\u5de5\u5ba1\u6838\u6d41\u6c34\u7ebf\u201d\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Verol<\/span>\n                <\/div>\n<div class=\"comment-content\">Stop asking LLMs &#8220;is this true?&#8221; when they hallucinate, they will just lie again. Verol fixes this by adding an independent verification layer to ChatGPT, Claude, and Gemini. It parses answers, executes real-time web lookups, and validates sources through a dedicated backend pipeline. You get instant verdicts, confidence metrics, and clickable sources. No data tracking; history stays local. 5 free runs to test it. Plans from $4.99\/mo.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt \ud83d\udc4b<\/p>\n<p>I&#8217;m Mark, creator of <a href=\"https:\/\/www.verol.app\/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Verol<\/a>.<\/p>\n<p>I built this tool because I got tired of manually copy pasting AI answers into Google one sentence at a time to check if they were real. It was fine for a couple of days, but it quickly became exhausting and I still couldn&#8217;t trust half of what came back.<\/p>\n<p>Verol fixes this by sitting right on top of the AI chats you already use. Instead of asking the model &#8220;are you sure?&#8221; (which usually just triggers another confident, hallucinated paragraph), Verol extracts individual claims and passes them through an independent backend pipeline with live web lookups.<\/p>\n<p>It currently works on ChatGPT, Claude, and Gemini. And soon this list will increase. You get a clear trust score, per claim verdicts, and actual, clickable source links. Plus, your verification history never leaves your browser it stays completely local in your browser.<\/p>\n<p>Out of curiosity, I also ran a small benchmark (100 identical prompts across 3 models) to see how they stack up. It\u2019s not a formal scientific study, but the charts are in the gallery if you want to see how often confident-sounding answers fall apart under a live source check.<\/p>\n<p>There&#8217;s a free tier with 5 verifications so you can test it on your own workflows. I\u2019d love your honest feedback, especially if you rely on LLMs for research, coding, or anything where a subtle hallucination completely ruins your day.<\/p>\n<p>I&#8217;ll be here to answer questions all day. Thanks for checking it out! \ud83d\ude4f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>3<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>One thing I appreciate in verification tools is when they can honestly say &#8220;we couldn&#8217;t verify this&#8221; instead of forcing a verdict. Admitting uncertainty is often more useful than filling the gap with a confident-looking citation that doesn&#8217;t actually support the claim. <\/p>\n<\/p>\n<p>Congrats on the launch!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The plausible-sounding hallucinations are the real danger, and they&#8217;re the hardest to catch because nothing about the answer looks wrong. I work on the data side of this, feeding models pre-verified facts so they don&#8217;t have to guess, but that only helps when you control the source. For everything else, a verification layer like this is the right shape. The honest &#8220;couldn&#8217;t find a source, here&#8217;s my confidence&#8221; behavior is the part that earns trust. Asking the model to check itself just burns credits and produces another confident paragraph, like Luke said. One question on the real-time mode: verifying every response live sounds great but also expensive in latency and lookups. Do you let people scope it to certain chats or claim types so it isn&#8217;t running on every throwaway message?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@hunter_upscale\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@hunter_upscale<\/a>&nbsp;For now real time is a toggle, which user can turn on when he needs to verify data as he chats with AI, it has an eco mode where it finds all claims then by priority picks up only most necessary ones to verify based on whole context picture. Thats why we introduced as well manual mode where user can define by itself which claims to verify manually and which messages are necessary to verify and which ones are just small talk messages.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Independent verification layer is the right framing. Asking an LLM to grade itself is a dead end, so source-backed verdicts and confidence metrics are valuable. How do you handle claims that require paid\/logged-in sources or rapidly changing data?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;I am using different search engines, when a claim needs actual data it uses an according search engine which searches through most actual data. Unfortunately paid resources can not be validated as the DOM elements fetched by the pipeline are hidden by a paywall or something else.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">I always find I ask Claude to verify, sometimes multiple times, and it just eats all my credits. This could definitely be very useful<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Honestly the part that worries me as a non-coder isn&#8217;t the obvious hallucinations, it&#8217;s the plausible-sounding ones I&#8217;d never think to question. When I lean on AI to research a post or sanity-check an idea, I&#8217;m just&#8230; taking its word, because I can&#8217;t always check the source myself. What does Verol do when a claim isn&#8217;t really web-checkable, or when the sources it pulls disagree with each other?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@luca_capone\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@luca_capone<\/a>&nbsp;Yeah i agree with that, and our tool is honest with you if it couldn&#8217;t find any web resources to validate with, it won&#8217;t frabricate some random resources instead we have a confidence score which says how confident the pipeline is.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This is great! <a href=\"https:\/\/www.producthunt.com\/@mark_prod\" data-node-type=\"mention\" data-mention-type=\"user\" data-mention-id=\"mark_prod\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@mark_prod<\/a> I would love to try this out soon. AI hallucinations has been the bane of my existence lately, just 2 days ago, I was working on a project that required a lot of research, I caught it hallucinating, pointed it out and it immediately changed it&#8217;s direction. This got me worried if all of my previous research had been wrong and I had to start validating them all. So great job! This is really a problem I&#8217;m sure a lot of people face.<\/p>\n<p>I&#8217;m curious to know though, what triggers Verol? Does a kind of kinds of question trigger it? Or does it work on the background, validating very response the AI chat gives? <\/p>\n<p>Also, what does it validate against? <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>@alochukwu Hey, the work pipeline of this tool is simple. We have manual verification where the user chooses their latest message to be verified manually, and a real-time one which picks up every message from the AI chat and verifies it as soon as the response is written. We did both to give the user the freedom to choose when they need to validate and when it\u2019s just a small message not worth verifying.<\/p>\n<p>About validation, it works with multiple search engines and different LLMs based on the nature of the claim extracted. Different search engines have different sources of truth, so we combine them to get the best result out there.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#17<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/XAE4C4TNQIMRPV\" class=\"app-title\">Relay<\/a><\/p>\n<div class=\"one-liner\">Paste a site &#038; get an AI receptionist that learns from calls<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">90<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Relay \u5c06\u4efb\u610f\u7f51\u7ad9\u94fe\u63a5\u8f6c\u5316\u4e3a7&#215;24\u5c0f\u65f6AI\u7535\u8bdd\u63a5\u5f85\u5458\uff0c\u57fa\u4e8e\u5546\u5bb6\u81ea\u6709\u77e5\u8bc6\u5e93\u81ea\u52a8\u5e94\u7b54\u3001\u9884\u8ba2\u5e76\u7ba1\u7406\u65e5\u5386\uff0c\u6bcf\u6b21\u901a\u8bdd\u540e\u9700\u7ecf\u5e97\u4e3b\u6279\u51c6\u5b66\u4e60\u4f18\u5316\uff0c\u89e3\u51b3\u5c0f\u5fae\u5546\u6237\u56e0\u6f0f\u63a5\u7535\u8bdd\u5bfc\u81f4\u7684\u6536\u5165\u6d41\u5931\u95ee\u9898\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e3708ea8-b98c-4a1e-b826-a15552cec887.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d6e28e34-c313-4200-9e2c-bba0911552b7.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/1bfc86b9-4e1b-461b-812e-cc87f8dc8129.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/05c41379-001e-4d23-b780-baad329fcc38.jpeg?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b634ecb5-3e02-4c0a-be13-fee53b8cad32.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <video class=\"media-content\" poster=\"https:\/\/ph-files.imgix.net\/c1e263c4-be83-4324-8fd7-f7ebadebe74c.jpeg?auto=format\" data-video-url=\"https:\/\/youtu.be\/-p7hSLHlK00\"><source src=\"https:\/\/youtu.be\/-p7hSLHlK00\" type=\"video\/mp4\"><\/video><\/p>\n<div class=\"video-overlay\">\n<div class=\"play-icon\">\u25b6<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Calendar<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span><br \/>\n            <span class=\"tag\">Tech<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u7535\u8bdd\u63a5\u5f85\u5458<\/span><br \/>\n            <span class=\"tag\">\u667a\u80fd\u8bed\u97f3\u5ba2\u670d<\/span><br \/>\n            <span class=\"tag\">\u81ea\u52a8\u9884\u7ea6<\/span><br \/>\n            <span class=\"tag\">\u7f51\u7ad9\u8f6c\u7535\u8bdd<\/span><br \/>\n            <span class=\"tag\">\u77e5\u8bc6\u5e93\u9a71\u52a8<\/span><br \/>\n            <span class=\"tag\">\u4eba\u673a\u534f\u4f5c\u5b66\u4e60<\/span><br \/>\n            <span class=\"tag\">\u5546\u673a\u8f6c\u5316<\/span><br \/>\n            <span class=\"tag\">\u672c\u5730\u5546\u5bb6\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">SaaS<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u5173\u6ce8\u201c\u57fa\u4e8e\u81ea\u6709\u4e8b\u5b9e\u201d\u7684\u51c6\u786e\u6027\u673a\u5236\u548c\u201c\u4e3b\u4eba\u6279\u51c6\u201d\u7684\u5b66\u4e60\u8bbe\u8ba1\uff0c\u8ba4\u4e3a\u8fd9\u662f\u5efa\u7acb\u4fe1\u4efb\u7684\u5173\u952e\u3002\u591a\u4e8e\u534a\u6570\u63d0\u95ee\u805a\u7126\u5728\u77e5\u8bc6\u76f2\u533a\u5e94\u5bf9\uff08\u8f6c\u4eba\u5de5\u800c\u975e\u731c\u6d4b\uff09\u3001\u9884\u7ea6\u7ba1\u7406\u5168\u666f\uff08\u652f\u6301\u6539\u7b7e\u53d6\u6d88\uff09\u3001\u4ee5\u53ca\u5982\u4f55\u5728\u6fc0\u70c8\u8d5b\u9053\u4e2d\u5dee\u5f02\u5316\u3002\u4e00\u4f4d\u67cf\u6797\u7528\u6237\u63d0\u51fa\u975e\u672c\u5730\u8bed\u8a00\u9500\u552e\u65b9\u6848\u5e76\u83b7\u5f97\u652f\u6301\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Relay\u7684\u5207\u5165\u70b9\u806a\u660e\u4e14\u52a1\u5b9e\u2014\u2014\u5b83\u6ca1\u6709\u8bd5\u56fe\u518d\u9020\u4e00\u4e2a\u901a\u7528AI\u52a9\u7406\uff0c\u800c\u662f\u7cbe\u51c6\u5361\u4f4d\u201c\u9ad8\u9891\u6f0f\u63a5\u7535\u8bdd\u201d\u8fd9\u4e00\u672c\u5730\u5546\u6237\u6700\u75db\u3001\u4e5f\u6700\u76f4\u89c2\u7684\u6536\u5165\u6f0f\u6d1e\u3002\u4ece\u4ea7\u54c1\u8bbe\u8ba1\u4e0a\u770b\uff0c\u201c\u7c98\u8d34\u7f51\u7ad9\u2192\u751f\u6210\u63a5\u5f85\u5458\u201d\u7684\u6781\u7b80\u4e0a\u624b\u6307\u5357\uff0c\u914d\u5408\u540e\u7eed\u901a\u8bdd\u6570\u636e\u7ecf\u5e97\u4e3b\u6279\u51c6\u53cd\u54fa\u77e5\u8bc6\u5e93\u7684\u95ed\u73af\uff0c\u672c\u8d28\u4e0a\u89e3\u51b3\u4e86\u4e0a\u4e00\u4ee3IVR\u7cfb\u7edf\u914d\u7f6e\u6210\u672c\u9ad8\u3001\u7ef4\u62a4\u96be\u7684\u95ee\u9898\uff0c\u8ba9\u201c\u96f6IT\u57fa\u7840\u201d\u7684\u5c0f\u5e97\u4e3b\u4e5f\u80fd\u62e5\u6709\u4e00\u4e2a\u6301\u7eed\u8fdb\u5316\u7684\u524d\u53f0\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4f46\u5176\u771f\u6b63\u7684\u62a4\u57ce\u6cb3\u4e0d\u5728\u4e8e\u201c\u5feb\u201d\uff0c\u800c\u5728\u4e8e\u201c\u53ef\u63a7\u201d\u3002\u5728\u4e00\u4e2aAI\u5f00\u53e3\u8bf4\u8bdd\u5c31\u53ef\u80fd\u7ffb\u8f66\u7684\u65f6\u4ee3\uff0cRelay\u7528\u201c\u53ea\u4ece\u6838\u51c6\u4e8b\u5b9e\u56de\u7b54\u201d\u548c\u201c\u4eba\u53c2\u4e0e\u51b3\u7b56\u7684\u5b66\u4e60\u94fe\u201d\u9501\u6b7b\u4e86\u5e7b\u60f3\u7684\u7a7a\u95f4\uff0c\u8fd9\u4e00\u70b9\u76f4\u51fb\u533b\u7597\uff08\u5982\u7259\u79d1\uff09\u3001\u533b\u7f8e\u7b49\u53d7\u6cd5\u89c4\u548c\u8bef\u89e3\u98ce\u9669\u6781\u9ad8\u7684\u884c\u4e1a\u75db\u70b9\u2014\u2014\u8ba9AI\u65e2\u9ad8\u6548\u53c8\u201c\u53ef\u95ee\u8d23\u201d\u3002\u4e0d\u8fc7\uff0c\u4ea7\u54c1\u76ee\u524d\u4ecd\u9762\u4e34\u5de8\u5927\u9690\u60a3\uff1a\u9996\u5148\uff0c\u5355\u4e00\u7f51\u7ad9\u722c\u53d6\u7684\u77e5\u8bc6\u8fb9\u754c\u5728\u5e94\u5bf9\u590d\u6742\u7535\u8bdd\u573a\u666f\uff08\u5982\u9000\u8d39\u653f\u7b56\u89e3\u91ca\u3001\u8de8\u670d\u52a1\u95ee\u9898\uff09\u65f6\u6781\u6613\u65ad\u88c2\uff0c\u5373\u4fbf\u6709\u5c42\u7ea7\u56de\u9000\u673a\u5236\uff0c\u4ecd\u5b58\u5728\u6838\u5fc3\u77e5\u8bc6\u5916\u6cc4\u6216\u7b54\u975e\u6240\u95ee\u7684\u98ce\u9669\uff1b\u5176\u6b21\uff0c\u9884\u7ea6\u7cfb\u7edf\u5bf9\u63a5\u7684\u6df1\u5ea6\u4e0e\u7a33\u5b9a\u6027\uff08\u5982\u5b9e\u65f6\u5e93\u5b58\u540c\u6b65\u3001\u51b2\u7a81\u68c0\u6d4b\uff09\u662f\u53e6\u4e00\u7aef\u547d\u95e8\uff0c\u8fd9\u662f\u6b64\u524d\u4f17\u591aAI\u5ba2\u670d\u201c\u7ffb\u8f66\u201d\u7684\u91cd\u707e\u533a\uff1b\u6700\u540e\uff0c\u201c\u53eb\u597d\u4e0d\u53eb\u5ea7\u201d\u662f\u6b64\u7c7b\u4ea7\u54c1\u7684\u5e38\u6001\u2014\u2014\u5546\u6237\u867d\u7136\u5634\u4e0a\u8bf4\u559c\u6b22\uff0c\u4f46\u82e5\u9996\u6b21\u7535\u8bdd\u4f53\u9a8c\u672a\u80fd\u5e26\u6765\u76f4\u63a5\u7684\u9884\u7ea6\u8f6c\u5316\uff0c\u4ea7\u54c1\u7c98\u6027\u4f1a\u8fc5\u901f\u5d29\u574f\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u4e00\u53e5\u8bdd\uff1aRelay\u5207\u4e2d\u4e86\u771f\u5b9e\u7684\u5546\u4e1a\u786c\u9700\u6c42\uff0c\u62e5\u6709\u4f18\u96c5\u7684\u8d77\u70b9\u548c\u4ee4\u4eba\u4fe1\u670d\u7684\u5b89\u5168\u8bbe\u8ba1\uff1b\u4f46\u4ea7\u54c1\u4ece\u201c\u73a9\u5177\u201d\u5230\u201c\u751f\u4ea7\u529b\u201d\u7684\u8de8\u8d8a\uff0c\u53d6\u51b3\u4e8e\u5bf9\u4e13\u4e1a\u573a\u666f\u77e5\u8bc6\u8986\u76d6\u7684\u4e25\u8c28\u7a0b\u5ea6\uff0c\u4ee5\u53ca\u4e0e\u652f\u4ed8\u3001\u5e93\u5b58\u7b49\u540e\u7aef\u7cfb\u7edf\u7684\u65e0\u7f1d\u54ac\u5408\u80fd\u529b\u3002\u8fd9\u4e00\u8d5b\u9053\u4e0d\u7f3a\u201c\u793a\u8303Demo\u201d\uff0c\u7f3a\u7684\u662f\u7ecf\u5f97\u8d77\u9ad8\u5e76\u53d1\u73b0\u5b9e\u68c0\u9a8c\u7684\u201c\u5de5\u4f5c\u9a6c\u201d\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Relay<\/span>\n                <\/div>\n<div class=\"comment-content\">Relay turns a website link into a working AI phone receptionist. It answers 24\/7, books real appointments on Google Calendar, Square, Calendly, Outlook &#038; more \u2014 answers only from the business&#8217;s own facts, and learns from every call, with owner approval.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">I was making AI receptionists for local businesses and noticed that I needed to do a lot of manual work setting up n8n workflows, etc. Also, each booking system needs its own specific approach. So I made something that helps me do it 100x faster. It usually takes at least an hour to set up a receptionist. Now I can build one in a few seconds. And it learns from every call. I showed it to a friend of mine who does the same thing, and he said, you need to make this available for everyone!<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@kupuelel\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@kupuelel<\/a>&nbsp;Interesting approach. Turning a website into a 24\/7 AI receptionist that books appointments and answers based on the business&#8217;s own information could save a lot of time. I like the owner approval step for learning from calls\u2014it adds an important layer of control.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The &#8220;learns from every call, with owner approval&#8221; detail is what stood out to me. I build voice AI in the aging-in-place space, and that human-in-the-loop approval step is exactly what earns trust when an agent is acting on someone&#8217;s behalf. Curious how Relay handles a caller asking something the business facts don&#8217;t cover: does it defer to a human, or attempt a best guess?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p>Great question, Igor! Relay answers in layers. First it tries to answer from the business context baked into the agent&#8217;s prompt. If it can&#8217;t, it falls back to a larger knowledge base. And if the answer isn&#8217;t there either, it hands the caller off to a human rather than guessing.<\/p>\n<\/p>\n<p>The nice part is that every unanswered question gets saved, and Relay asks <em>you<\/em> how you&#8217;d like it answered \u2014 so the agent gets smarter over time, on your terms. Because answers only ever come from sources you&#8217;ve approved, no one can inject false information into the bot directly. It never makes things up.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I&#8217;m sure dentists and med spas are going to love this. Missed calls are their biggest revenue leak and they know it. Does it handle appointment rescheduling too or just new bookings?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vlad_zabavskiy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vlad_zabavskiy<\/a>&nbsp;sure! relay generates full spektor of functions like rescheduling and cancelling. And we about to produce more.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>AI receptionist is a crowded lane right now. The &#8220;answers only from the business&#8217;s own facts&#8221; constraint is the part I&#8217;d want to see hold up, since that&#8217;s usually where these break. What&#8217;s the differentiation you&#8217;re leading with against the others launching this quarter?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">@mad_morsta you get the ready to use ai receptionist in less then a minute, it is learning from every call<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Turning a website into a receptionist is a clean onboarding idea. The owner-approval loop for learning from calls is smart too. How do you prevent the agent from answering beyond the business\u2019s known f<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@ayush_thakur17\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@ayush_thakur17<\/a>&nbsp;thanks for your question, you can find a great answer on it above. <a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a> asked me. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Turning a website into a receptionist is a clean onboarding idea. The owner-approval loop for learning from calls is smart too. How do you prevent the agent from answering beyond the business\u2019s known facts?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;we have strickt system of limits inside the instructions for the agent, so it will not answer any other questions except once the belong to business and are based on known facts.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>I&#8217;m in Berlin tried selling this Voice Agents for local business but I don&#8217;t speak German&#8230;.so when I visit them I can&#8217;t sell them. <\/p>\n<p>you think I could easily build one of this to different businesses? <\/p>\n<p>And do you think I could build one Agent to explain each business what is this about, so I don&#8217;t need to talk german? <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@javierfandos\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@javierfandos<\/a>&nbsp;You don&#8217;t need German at all. You paste the business&#8217;s website, click build, and Relay writes the whole agent for you \u2014 and it talks in German. Every business gets its own agent, takes a couple minutes each.<\/p>\n<p>And your second idea is smart. You can build one agent that explains Relay in German and just let it do the talking for you. Give it a phone number, or play it right there when you walk into the shop. Honestly that&#8217;s a great way to sell when you don&#8217;t speak the language \u2014 and it shows them exactly what it does. Try it and tell me how it goes<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#18<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/K6NMBR7L2VP22L\" class=\"app-title\">Momentra<\/a><\/p>\n<div class=\"one-liner\">A cozy camera app for beautifully framed memories<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">89<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>Momentra \u662f\u4e00\u6b3e\u4e3b\u6253\u201c\u5148\u9009\u76f8\u6846\u518d\u62cd\u7167\u201d\u7684\u6781\u7b80\u7f8e\u5b66\u76f8\u673a\u5e94\u7528\uff0c\u4e13\u4e3a\u90a3\u4e9b\u60f3\u628a\u65e5\u5e38\u5feb\u7167\u53d8\u6210\u6e29\u99a8\u8bb0\u5fc6\u5361\u7247\u3001\u800c\u975e\u5355\u7eaf\u5806\u6ee4\u955c\u7684\u7528\u6237\u8bbe\u8ba1\uff0c\u89e3\u51b3\u7684\u662f\u201c\u5982\u4f55\u8ba9\u666e\u901a\u7167\u7247\u77ac\u95f4\u62e5\u6709\u4eea\u5f0f\u611f\u548c\u53d9\u4e8b\u611f\u201d\u7684\u8f7b\u7f16\u8f91\u9700\u6c42\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/1fa28c70-092b-47a3-9806-02609a2fe6e5.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/97007e0a-0d84-494e-8c0b-3009fb93cc16.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f80a20f6-4320-4367-bedb-29fb04d125bf.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/f3942703-eaf1-46a7-8e3c-c3b855c66d68.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b66939dc-d9b5-41e6-863d-b76ec8ddc205.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/00aca756-f7bb-44cb-ba45-a526398b6c80.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Android<\/span><br \/>\n            <span class=\"tag\">Photography<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u76f8\u673a\u5e94\u7528<\/span><br \/>\n            <span class=\"tag\">\u7f8e\u5b66\u6ee4\u955c<\/span><br \/>\n            <span class=\"tag\">\u76f8\u6846\u6a21\u677f<\/span><br \/>\n            <span class=\"tag\">\u8bb0\u5fc6\u6536\u85cf<\/span><br \/>\n            <span class=\"tag\">\u6781\u7b80\u7f16\u8f91<\/span><br \/>\n            <span class=\"tag\">\u89c6\u89c9\u65e5\u8bb0<\/span><br \/>\n            <span class=\"tag\">\u6000\u65e7\u98ce\u683c<\/span><br \/>\n            <span class=\"tag\">\u793e\u4ea4\u5206\u4eab<\/span><br \/>\n            <span class=\"tag\">\u6444\u5f71\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u751f\u6d3b\u65b9\u5f0f<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u8ba4\u4e3a\u6b64\u5e94\u7528\u8ba9\u7167\u7247\u66f4\u6709\u201c\u8bb0\u5fc6\u611f\u201d\u800c\u975e\u751f\u786c\u7684\u201c\u4e0a\u4f20\u7269\u201d\u3002\u5f00\u53d1\u8005\u5e0c\u671b\u6536\u96c6\u5173\u4e8e\u76f8\u6846\u72ec\u7279\u6027\u3001\u540e\u7eed\u76f8\u6846\u5305\u4e3b\u9898\u4ee5\u53ca\u7528\u6237\u4e3b\u8981\u4f7f\u7528\u573a\u666f\uff08\u62cd\u6444\u3001\u65e5\u8bb0\u3001\u793e\u4ea4\uff09\u7684\u53cd\u9988\u3002\u6709\u7528\u6237\u79f0\u8d5e\u76f8\u6846\u8f6e\u5ed3\u7f8e\u89c2\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                Momentra \u7cbe\u51c6\u5730\u5207\u4e2d\u4e86\u624b\u673a\u6444\u5f71\u6781\u7e41\u4e3b\u4e49\u540e\u7684\u201c\u5026\u6020\u7ea2\u5229\u201d\u3002\u5f53 VSCO \u548c\u9192\u56fe\u4eec\u5c06\u6ee4\u955c\u548c\u4fee\u56fe\u80fd\u529b\u5377\u5230\u6781\u81f4\uff0c\u7528\u6237\u53cd\u800c\u4ea7\u751f\u4e86\u8ba4\u77e5\u8d1f\u62c5\u2014\u2014\u5bf9\u7740\u4e00\u5f20\u968f\u624b\u62cd\u7ea0\u7ed3\u8c03\u8272\u53c2\u6570\uff0c\u672c\u5c31\u662f\u4e00\u79cd\u7cbe\u795e\u5185\u8017\u3002Momentra \u53cd\u5411\u64cd\u4f5c\uff0c\u5b83\u5c06\u6838\u5fc3\u64cd\u4f5c\u4ece\u201c\u8c03\u8272\u201d\u964d\u7ea7\u4e3a\u201c\u9009\u6846\u201d\uff0c\u628a\u4fee\u56fe\u884c\u4e3a\u7b80\u5316\u4e3a\u4e00\u79cd\u4eea\u5f0f\u611f\u5f88\u5f3a\u7684\u201c\u88c5\u88f1\u201d\u3002\u8fd9\u4e2a\u201c\u5148\u6709\u76f8\u6846\u518d\u62cd\u7167\u201d\u7684\u6d41\u7a0b\u8bbe\u8ba1\u975e\u5e38\u806a\u660e\uff0c\u5b83\u5f3a\u8feb\u7528\u6237\u5e26\u7740\u201c\u6700\u7ec8\u5448\u73b0\u201d\u7684\u610f\u8bc6\u53bb\u53d6\u666f\uff0c\u65e0\u5f62\u4e2d\u63d0\u5347\u4e86\u7167\u7247\u7684\u53d9\u4e8b\u6d53\u5ea6\u3002\u4ea7\u54c1\u4ef7\u503c\u4e0d\u5728\u4fee\u56fe\u80fd\u529b\uff0c\u800c\u5728\u63d0\u4f9b\u4e00\u79cd\u201c\u5c0f\u5de7\u7684\u3001\u786e\u5b9a\u7684\u5e78\u798f\u611f\u201d\uff0c\u975e\u5e38\u5951\u5408\u5f53\u4e0b\u5e74\u8f7b\u4eba\u5bf9\u201c\u6570\u5b57\u624b\u8d26\u201d\u548c\u201cPinterest\u7f8e\u5b66\u201d\u7684\u8ff7\u604b\u3002\u4e0d\u8fc7\uff0c89\u7968\u7684\u5e02\u573a\u53cd\u9988\u53ea\u80fd\u7b97\u662f\u5c0f\u5708\u5b50\u91cc\u7684\u6e29\u548c\u9a8c\u8bc1\u3002\u5b83\u7684\u6838\u5fc3\u6740\u624b\u950f\u662f\u201c\u76f8\u6846\u201d\u4e0e\u201c\u573a\u666f\u201d\u7684\u9ad8\u5ea6\u60c5\u611f\u7ed1\u5b9a\uff08\u5982\u5496\u5561\u5e97\u7528\u201c\u660e\u4fe1\u7247\u201d\u6846\u3001\u65c5\u6e38\u7528\u201c\u590d\u53e4\u6ce2\u201d\u6846\uff09\uff0c\u4f46\u8fd9\u4e5f\u610f\u5473\u7740\u5929\u82b1\u677f\u6781\u4f4e\uff1a\u53ef\u590d\u5236\u7684\u8bbe\u8ba1\u58c1\u5792\u4e0d\u9ad8\uff0c\u4e00\u65e6\u7ade\u54c1\u63a8\u51fa\u7c7b\u4f3c\u4e14\u66f4\u4e30\u5bcc\u7684\u6a21\u677f\u5305\uff0c\u7528\u6237\u5f88\u53ef\u80fd\u201c\u56e0\u4e3a\u6362\u4e3b\u9898\u800c\u6362\u5e94\u7528\u201d\u3002\u6b64\u5916\uff0c\u5b8c\u5168\u4f9d\u8d56\u76f8\u6846\u8f93\u51fa\u610f\u5473\u7740\u7528\u6237\u65e0\u6cd5\u5fae\u8c03\u7167\u7247\u672c\u8eab\uff08\u5982\u66dd\u5149\u3001\u88c1\u5207\uff09\uff0c\u8fd9\u5728\u521a\u9700\u6444\u5f71\u573a\u666f\u4e0b\u4f1a\u663e\u5f97\u201c\u6709\u70b9\u9e21\u808b\u201d\u3002\u672a\u6765\u7a81\u7834\u70b9\u4e0d\u5728\u4e8e\u52a0\u66f4\u591a\u6ee4\u955c\uff0c\u800c\u5728\u4e8e\u80fd\u5426\u5c06\u201c\u751f\u6210\u8bb0\u5fc6\u5361\u7247\u201d\u8fd9\u4e2a\u52a8\u4f5c\u53d1\u5c55\u4e3a\u4e00\u79cd\u7c7b\u4f3c\u201cPloly\u590d\u53e4\u76f8\u673a\u201d\u90a3\u6837\u7684\u6587\u5316\u7b26\u53f7\uff0c\u6216\u8005\u5f00\u653e\u4e2a\u4eba\u76f8\u6846\u5b9a\u5236\/\u793e\u533a\u6a21\u677f\u4ea4\u6362\u4ee5\u589e\u52a0\u7c98\u6027\u3002\u5426\u5219\uff0c\u5b83\u53ea\u4f1a\u662f\u4e00\u6b3e\u201c\u62cd\u7167\u4e34\u65f6\u5de5\u201d\uff0c\u7528\u5b8c\u5373\u8d70\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">Momentra<\/span>\n                <\/div>\n<div class=\"comment-content\">Momentra is a cozy aesthetic camera app that turns everyday photos into beautifully framed memories. Choose from artistic frame styles like Postcard, Petal Bloom, Retro Wave, Lucky Bloom, Cozy Grid, Pixel Charm, and Soft Corner. Capture a new photo or style an existing one, preview your framed memory, save it to your device, and share it anywhere. Momentra is made for cozy creators, travelers, journal lovers, Pinterest users, caf\u00e9 photographers, scrapbook makers.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This feels made for people who treat photos like little memories, not just uploads. The frame styles give everyday shots more personality without turning the app into a heavy editor.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>2<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hey Product Hunt \ud83d\udc4b<\/p>\n<p>I\u2019m Jafar, the maker of Momentra.<\/p>\n<p>I built Momentra because I wanted a camera app that felt less like a heavy editing tool and more like a small memory-keeping experience.<\/p>\n<p>Most camera and photo apps focus on filters, effects, or complex editing. Momentra is different: it starts with the frame.<\/p>\n<p>The idea is simple:<\/p>\n<p>Pick a cozy frame \u2192 capture or choose a photo \u2192 save a beautifully framed memory.<\/p>\n<p>Momentra includes artistic frame styles like:<\/p>\n<p>\ud83c\udf37 Petal Bloom<br \/>\n\ud83d\udc8c Postcard<br \/>\n\u3030\ufe0f Retro Wave<br \/>\n\ud83c\udf40 Lucky Bloom<br \/>\n\u25a6 Cozy Grid<br \/>\n\u25a3 Pixel Charm<br \/>\n\u25ef Soft Corner<\/p>\n<p>It\u2019s designed for people who love cozy photos, journaling, travel memories, caf\u00e9 moments, Pinterest-style visuals, and soft nostalgic aesthetics.<\/p>\n<p>What I\u2019d love feedback on:<\/p>\n<p>1. Which frame feels the most unique?<br \/>\n2. What kind of frame pack should I add next?<br \/>\n3. Would you use this more for camera capture, journaling, or social sharing?<\/p>\n<p>Thanks for checking out Momentra. Your memories, beautifully framed \ud83e\udd0e<\/p><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@jafar_mansuri\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@jafar_mansuri<\/a>&nbsp;Memories are framed with the nice outline, It looks good. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#19<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/UVAVAR2QCINYUM\" class=\"app-title\">EmailFlow.AI<\/a><\/p>\n<div class=\"one-liner\">Like Claude Design for Email Newsletters<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">89<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>EmailFlow.AI \u901a\u8fc7AI\u5c06\u7528\u6237\u7b80\u5355\u7684\u6587\u5b57\u63cf\u8ff0\u76f4\u63a5\u8f6c\u5316\u4e3a\u7b26\u5408\u54c1\u724c\u98ce\u683c\u7684\u90ae\u4ef6\uff0c\u5e76\u63d0\u4f9b\u53d1\u9001\u4e0e\u81ea\u52a8\u5316\u7ba1\u7406\uff0c\u4e00\u7ad9\u5f0f\u89e3\u51b3\u90ae\u4ef6\u8425\u9500\u4e2d\u8bbe\u8ba1\u4e0e\u54c1\u724c\u4e0d\u4e00\u81f4\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/611b87f8-5f4d-4342-92a0-6eeed7748962.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/0bc8720c-ca46-4c8c-b243-95bb3a4747c5.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/26be8dfe-7343-43d9-8a88-2883b17c7560.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/26c1a959-3724-44d3-a905-9a283dd980be.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/2c562ba0-053b-4024-8e61-346f6f9f7951.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/7350ab61-e564-479f-b401-637184902b5c.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/e2c53f2a-de2f-44b7-81c5-2723cf6b1476.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/cdf01c9d-ba06-4501-aa32-33d41d9009ba.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/6ca248e9-fb70-496e-b6e1-f0a312cb4193.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/321b70f9-a633-46c7-82f7-c8e8391c1d18.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/4c75fc48-09f2-4dfa-8452-bf83df990647.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/662662d2-165e-4314-9f0d-c5899de88c06.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/d34e06d9-4fe6-4e98-aa2b-72da6f37b0f7.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/64510e0e-d9a6-40b7-9af6-b48503a9a83b.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/01114f69-3047-4194-9e62-e27658deba37.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">Design Tools<\/span><br \/>\n            <span class=\"tag\">Email Marketing<\/span><br \/>\n            <span class=\"tag\">Artificial Intelligence<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">AI\u90ae\u4ef6\u8425\u9500<\/span><br \/>\n            <span class=\"tag\">\u54c1\u724c\u98ce\u683c\u6293\u53d6<\/span><br \/>\n            <span class=\"tag\">\u81ea\u52a8\u5316\u90ae\u4ef6<\/span><br \/>\n            <span class=\"tag\">\u667a\u80fd\u90ae\u4ef6\u8bbe\u8ba1<\/span><br \/>\n            <span class=\"tag\">\u90ae\u4ef6\u6a21\u677f\u5e93<\/span><br \/>\n            <span class=\"tag\">\u96f6\u57fa\u7840\u90ae\u4ef6\u521b\u4f5c<\/span><br \/>\n            <span class=\"tag\">\u90ae\u4ef6\u6295\u9012\u7ba1\u7406<\/span><br \/>\n            <span class=\"tag\">\u89c6\u89c9\u81ea\u52a8\u5316\u5de5\u4f5c\u6d41<\/span><br \/>\n            <span class=\"tag\">SaaS\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">Product Hunt<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u7528\u6237\u666e\u904d\u5173\u6ce8\u201c\u7f51\u7ad9\u54c1\u724c\u6293\u53d6\u201d\u7684\u51c6\u786e\u5ea6\uff08\u5c24\u5176\u5bf9\u98ce\u683c\u4e0d\u7edf\u4e00\u7ad9\u70b9\u7684\u652f\u6301\uff09\uff0c\u4ee5\u53ca\u751f\u6210\u540e\u80fd\u5426\u7cbe\u7ec6\u63a7\u5236\u7248\u5f0f\u3001\u9501\u5b9a\u54c1\u724c\u89c4\u5219\u3002\u521b\u59cb\u4eba\u56de\u5e94\u5f3a\u8c03\u652f\u6301WYSIWYG\u7f16\u8f91\u3001HTML\u5bfc\u51fa\u3001AI\u91cd\u7ed8\u56fe\u7247\uff0c\u672a\u6765\u4e24\u5468\u4f1a\u52a0\u65b0\u529f\u80fd\u81f3\u7ade\u54c1\u540c\u7b49\u6c34\u5e73\u3002\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                EmailFlow.AI\u7684\u5207\u5165\u70b9\u8db3\u591f\u5201\u94bb\u2014\u2014\u5b83\u4e0d\u8bd5\u56fe\u5728\u5df2\u7ea2\u6d77\u7684\u90ae\u4ef6\u8425\u9500\u5e73\u53f0\uff08Mailchimp\u3001ConvertKit\u7b49\uff09\u4e2d\u51ed\u501f\u5355\u7eaf\u7684AI\u6587\u5b57\u751f\u6210\u6216\u62d6\u62fd\u7f16\u8f91\u5668\u786c\u625b\uff0c\u800c\u662f\u7cbe\u51c6\u6253\u4e86\u4e00\u8bb0\u201c\u54c1\u724c\u4e00\u81f4\u6027\u201d\u7684\u7ec4\u5408\u62f3\u3002\u4f20\u7edfAI\u5de5\u5177\u5f80\u5f80\u751f\u6210\u4e00\u4e2a\u6f02\u4eae\u7684\u201c\u7a7a\u58f3\u90ae\u4ef6\u201d\uff0c\u4f46\u7528\u6237\u771f\u6b63\u75db\u82e6\u7684\u662f\u6bcf\u6b21\u8981\u624b\u52a8\u8c03\u6574\u8272\u503c\u3001\u5b57\u4f53\u3001Logo\u4f4d\u7f6e\uff0c\u8fd8\u4e0d\u6562\u4fdd\u8bc1\u6700\u540e\u6548\u679c\u548c\u672c\u8eab\u5b98\u7f51\u8c03\u6027\u4e00\u81f4\u3002\u5176\u201c\u626b\u63cf\u7f51\u7ad9\u540e\u6293\u53d6Logo\u3001\u914d\u8272\u4e0e\u8bed\u6c14\u201d\u8fd9\u4e00\u6b65\u770b\u4f3c\u8f7b\u5de7\uff0c\u5b9e\u5219\u5728AI\u751f\u6210\u4e0e\u8fd0\u8425\u6267\u884c\u4e4b\u95f4\u67b6\u8d77\u4e86\u4e00\u5ea7\u81ea\u52a8\u5316\u7684\u6865\u6881\uff0c\u8ba9\u201c\u57fa\u4e8e\u6587\u5b57\u63cf\u8ff0\u5373\u751f\u6210\u54c1\u724c\u76f8\u5173\u8bbe\u8ba1\u201d\u4e0d\u518d\u662f\u4e00\u53e5\u8425\u9500\u53e3\u53f7\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u503c\u5f97\u6ce8\u610f\u7684\u8fd8\u6709\u5176\u5b9a\u4ef7\u7b56\u7565\u7684\u66b4\u529b\u7f8e\u5b66\u2014\u2014\u201c\u6c38\u4e45\u514d\u8d39\u8ba1\u5212\u201d\u52a0\u4e0a\u4e0d\u9650\u8054\u7cfb\u4eba\u6b21\u6570\u7684\u56fa\u5b9a\u4ef7\u683c\uff0c\u76f4\u63a5\u5207\u4e2d\u4e86\u5927\u91cf\u4e2d\u5c0f\u521b\u4f5c\u8005\u548c\u4f01\u4e1a\u5bf9\u6309\u8054\u7cfb\u4eba\u8ba1\u8d39\u7684\u6df1\u6076\u75db\u7edd\u3002\u8fd9\u672c\u8d28\u662f\u5728\u7528AI\u7684\u5f3a\u5927\u5185\u6838\u98a0\u8986\u4f20\u7edf\u90ae\u4ef6\u5e73\u53f0\u7684\u8ba1\u8d39\u903b\u8f91\uff1a\u5f53\u8bbe\u8ba1\u6210\u672c\u88abAI\u964d\u81f3\u8fd1\u4e4e\u4e3a\u96f6\uff0c\u53ea\u6709\u5f53\u53d1\u9001\u91cf\u548c\u8ba2\u9605\u8005\u6570\u91cf\u4e0d\u518d\u6210\u4e3a\u6536\u8d39\u951a\u70b9\u65f6\uff0c\u5e02\u573a\u624d\u4f1a\u771f\u6b63\u6d17\u724c\u3002\n            <\/p>\n<p class=\"ai-content\">\n                \u771f\u6b63\u7684\u98ce\u9669\u5728\u4e8e\u54c1\u724c\u6293\u53d6\u4e0e\u8bed\u97f3\u5b66\u4e60\u7684\u6df1\u5ea6\u548c\u8fb9\u754c\u3002\u8bc4\u8bba\u4e2d\u4e5f\u6709\u4eba\u6307\u51fa\uff0c\u5982\u679c\u7ad9\u70b9\u672c\u8eab\u54c1\u724c\u6df7\u4e71\uff0cAI\u662f\u5426\u4f1a\u6293\u9519\u751a\u81f3\u201c\u8111\u8865\u201d\u51fa\u9519\u8bef\u98ce\u683c\uff1f\u8be5\u4ea7\u54c1\u76ee\u524d\u4f9d\u9760Firecrawl+\u89c6\u89c9\u6a21\u578b\u505a\u89e3\u6790\uff0c\u867d\u7136\u63d0\u4f9b\u624b\u52a8\u5fae\u8c03\u5f25\u8865\uff0c\u4f46\u82e5\u54c1\u724c\u8bc6\u522b\u901a\u7528\u51c6\u786e\u7387\u4e0d\u8db390%\uff0c\u5219\u5f88\u5bb9\u6613\u5728\u7528\u6237\u771f\u6b63\u4f9d\u8d56\u81ea\u52a8\u5316\u6d41\u7a0b\u65f6\u201c\u6389\u94fe\u5b50\u201d\uff0c\u8ba9\u5176\u6ca6\u4e3a\u53c8\u4e00\u4e2a\u9700\u8981\u624b\u5de5\u4fee\u8865\u201cAI\u6b8b\u5c40\u201d\u7684\u5de5\u5177\u3002\u7efc\u5408\u6765\u770b\uff0cEmailFlow.AI\u4ea7\u54c1\u903b\u8f91\u6e05\u6670\uff0c\u5dee\u5f02\u5316\u660e\u663e\uff0c\u80fd\u5426\u7a81\u7834AI+\u54c1\u724c\u8425\u9500\u9886\u57df\u7684\u4fe1\u4efb\u5899\uff0c\u5c31\u770b\u5176\u54c1\u724c\u626b\u63cf\u4e0eAI\u751f\u6210\u7684\u4e00\u81f4\u6027\u7ba1\u7406\u80fd\u8d70\u591a\u6df1\u4e86\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">EmailFlow.AI<\/span>\n                <\/div>\n<div class=\"comment-content\">EmailFlow.AI turns a text prompt into a polished, on-brand email in seconds, then sends and automates it. Scan your site once and it captures your logo, palette, and voice so every campaign looks like you. Get access to 12,000+ templates, visual automations, and managed-deliverability sending (verify a domain, start sending). Unlike per-contact tools, pricing is flat, and there&#8217;s a genuine Free Forever plan: no card, 5,000 emails\/mo, 500 subscribers.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Hey Product Hunt!<\/p>\n<p>Email marketing has always forced a bad trade: either pay a designer and copywriter for every campaign, or settle for a clunky drag-and-drop editor and emails that look off-brand. And the &#8220;free&#8221; plans? Usually a 14-day countdown in disguise.<\/p>\n<p>We re-built EmailFlow.AI to kill both problems. Describe the email or automation you want in plain English, and it generates a responsive, on-brand design in seconds. <\/p>\n<p>Connect your website and our AI agent learns your logo, colors, and voice so the first draft already looks like you, not a template.<\/p>\n<p>Under the hood you get the full stack: a 12,000+ template gallery, visual multi-step automations, and managed sending so deliverability is handled (just verify your domain). <\/p>\n<p>We&#8217;d love your feedback on the AI builder and brand scan especially. What would make this a no-brainer for your sending?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>1<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tsemrc\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tsemrc<\/a>&nbsp;After carefully checking your brand, I noticed that EmailFlow AI is not just another email marketing platform\u2014it focuses on transforming simple ideas into automated, revenue-generating email experiences. That&#8217;s why I happily shared a logo direction that combines email communication, intelligent automation, and business growth into a single memorable visual identity.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@tsemrc\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@tsemrc<\/a>&nbsp;Cool idea &#8211; congrats on the launch today! Does it just scrape from a website or other sources, like social media accounts? Having more than one resource for voice can help nail it down better.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The site scan for brand capture is a nice touch \u2013 that&#8217;s usually the part that kills the &#8220;just describe it&#8221; workflow. How accurate is it on sites with inconsistent branding?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@vlad_zabavskiy\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@vlad_zabavskiy<\/a>&nbsp;It works really well! We use firecrawl to parse even difficult websites, along with vision model interpretation with screenshots of your website to capture things that might only be in graphics and not in text. Then of course colors and brand assets. And you can customize it post-scan, or rescan if you update the site.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>This hits a real gap for me. I&#8217;ve been piecing together email marketing with AI design tools and the handoff is never seamless. The scan-your-site-to-capture-brand step is the part I&#8217;m most curious about. Going to try it.<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@mad_morsta\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@mad_morsta<\/a>&nbsp;Awesome, I&#8217;m gald to hear it! Please let me know if you have any feedback or ideas for new features you&#8217;d like to see. A LOT of new features are being added in the next 2 weeks. We&#8217;ll total feature parity with every other service. <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>1<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>The text-to-email workflow is a strong hook because email design is where a lot of campaigns slow down. Curious how much control users get after generation: can they lock brand rules, reusable sections, and tone before sending?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@sarveshsea\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@sarveshsea<\/a>&nbsp;Yeah you have total WYSIWYG control so you can manually edit anything like a regular email editor at any time. Also you have raw HTML if you want that for export or use in another agent app, etc. You can click to update a specific section or remix an image (image-to-image gen with your branding in mind, etc). <\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>For the site scan, how well does it pick up brand voice, like does it pull from blog copy or just visual style?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<div class=\"comment-replies\">\n<div class=\"reply-item\">\n<div class=\"reply-content\">\n<p><a href=\"https:\/\/www.producthunt.com\/@karimbenkeroum\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">@karimbenkeroum<\/a>&nbsp;It does a reasonably good job! We use Firecrawl to make sure scraping does a good job. You can manually adjust the summaries generated, ask it to rescan the site at any time, etc. You can read more about that here: <a href=\"https:\/\/emailflow.ai\/docs\/brand-scan\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/emailflow.ai\/docs\/brand-scan<\/a> . We also have API endpoints and\/or webhook options that could facilitate connecting your blog automatically. Thanks!<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                                <span>\u25b2<\/span><br \/>\n                                <span>0<\/span>\n                            <\/div>\n<p>                            <span>\u56de\u590d<\/span>\n                        <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<article class=\"app-card\">\n<div class=\"app-header\">\n<div class=\"rank\">#20<\/div>\n<div class=\"title-group\">\n            <a href=\"https:\/\/www.producthunt.com\/r\/JK6V57BJLNNJ2F\" class=\"app-title\">VEXI<\/a><\/p>\n<div class=\"one-liner\">Open-source AI coding agent for your terminal<\/div>\n<\/p><\/div>\n<div class=\"vote-btn\">\n<div class=\"vote-arrow\">\u25b2<\/div>\n<div class=\"vote-count\">88<\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"one-liner\"><strong>\u4e00\u53e5\u8bdd\u4ecb\u7ecd\uff1a<\/strong>VEXI\u662f\u4e00\u6b3e\u5f00\u6e90\u3001\u7ec8\u7aef\u4f18\u5148\u7684AI\u7f16\u7a0b\u52a9\u624b\uff0c\u5141\u8bb8\u5f00\u53d1\u8005\u81ea\u5e26API\u5bc6\u94a5\uff08BYOK\uff09\u63a5\u5165\u4e0d\u540c\u6a21\u578b\uff0c\u76f4\u63a5\u5728\u547d\u4ee4\u884c\u4e2d\u52a0\u901f\u7f16\u7801\u3001\u8c03\u8bd5\u3001\u91cd\u6784\u4e0e\u81ea\u52a8\u5316\uff0c\u89e3\u51b3\u5f00\u53d1\u8005\u9891\u7e41\u5207\u6362\u5de5\u5177\u3001\u88ab\u7279\u5b9a\u670d\u52a1\u5546\u9501\u5b9a\u7684\u75db\u70b9\u3002<\/div>\n<p>    <!-- \u5a92\u4f53\u753b\u5eca\uff1a\u5305\u542b\u89c6\u9891\u548c\u591a\u5f20\u56fe\u7247 --><\/p>\n<div class=\"media-gallery\">\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/62696b0e-50ff-4615-8ef4-daec75c10182.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/45e7f114-d7e1-49a5-8267-25000c61fa9e.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<div class=\"media-item-wrapper\">\n                <img decoding=\"async\" src=\"https:\/\/ph-files.imgix.net\/b875616a-3abf-4177-a48e-a858f9e3cc9f.png?auto=format\" class=\"media-content\" alt=\"\u4ea7\u54c1\u56fe\u7247\">\n            <\/div>\n<\/p><\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">API<\/span><br \/>\n            <span class=\"tag\">Open Source<\/span><br \/>\n            <span class=\"tag\">Developer Tools<\/span>\n        <\/div>\n<div class=\"tags-container\">\n<p>            <span class=\"tag\">\u5f00\u6e90<\/span><br \/>\n            <span class=\"tag\">AI\u7f16\u7a0b\u4ee3\u7406<\/span><br \/>\n            <span class=\"tag\">\u7ec8\u7aefCLI<\/span><br \/>\n            <span class=\"tag\">BYOK\u81ea\u6709\u5bc6\u94a5<\/span><br \/>\n            <span class=\"tag\">\u591a\u6a21\u578b\u652f\u6301<\/span><br \/>\n            <span class=\"tag\">\u5f00\u53d1\u8005\u5de5\u5177<\/span><br \/>\n            <span class=\"tag\">\u4ee3\u7801\u8c03\u8bd5<\/span><br \/>\n            <span class=\"tag\">\u8f7b\u91cf\u7ea7<\/span><br \/>\n            <span class=\"tag\">\u9690\u79c1\u53cb\u597d<\/span><br \/>\n            <span class=\"tag\">GitHub<\/span>\n        <\/div>\n<div class=\"reviews-section\">\n<div class=\"review-item\">\n<div class=\"review-bubble\">\n                <strong>\u7528\u6237\u8bc4\u8bba\u6458\u8981\uff1a<\/strong>\u5f00\u53d1\u8005\u8ba4\u540c\u7ec8\u7aef\u4f18\u5148\u4e0eBYOK+\u591a\u4f9b\u5e94\u5546\u7075\u6d3b\u5ea6\u662f\u63d0\u5347\u5de5\u4f5c\u6d41\u7684\u5173\u952e\u65b9\u5411\uff1b\u540c\u65f6\u629b\u51fa\u6838\u5fc3\u8ffd\u95ee\uff1a\u5bf9\u4e8e\u957f\u65f6\u95f4\u91cd\u6784\u64cd\u4f5c\uff0cVEXI\u5982\u4f55\u5728\u6587\u4ef6\u5199\u5165\u524d\u63d0\u4f9b\u53ef\u89c6\u5316\u68c0\u89c6\u673a\u5236\uff0c\u4ee5\u4fdd\u969c\u53d8\u66f4\u53ef\u63a7\u4e0e\u53ef\u5ba1\u67e5\uff1f\n            <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<div class=\"ai-section\">\n<div class=\"ai-content\" style=\"font-size: large;\"><strong>AI \u9510\u8bc4<\/strong><\/div>\n<p class=\"ai-content\">\n                VEXI\u7684\u4ef7\u503c\u4e3b\u5f20\u7cbe\u51c6\u2014\u2014\u5207\u4e2d\u5f00\u53d1\u8005\u5bf9\u201c\u53bb\u4e2d\u5fc3\u5316AI\u201d\u7684\u521a\u9700\uff1a\u81ea\u5e26\u5bc6\u94a5\u3001\u591a\u6a21\u578b\u517c\u5bb9\u3001\u5f00\u6e90\u79c1\u6709\u5316\u90e8\u7f72\uff0c\u89c4\u907f\u4e86\u5355\u4e00\u4e91\u670d\u52a1\u7684\u4f9d\u8d56\u548c\u9690\u79c1\u6cc4\u6f0f\u98ce\u9669\uff1b\u4e14\u5c06AI\u5f15\u5165\u7ec8\u7aef\u573a\u666f\uff0c\u7b26\u5408\u9ad8\u9636\u7a0b\u5e8f\u5458\u201c\u4e00\u5207\u5728\u952e\u76d8\u4e0a\u5b8c\u6210\u201d\u7684\u64cd\u4f5c\u4e60\u60ef\uff0c\u964d\u4f4e\u8ba4\u77e5\u5207\u6362\u6210\u672c\u3002\u4f46\u9700\u6e05\u9192\u7684\u662f\uff1a\u201c\u7ec8\u7aefAI\u4ee3\u7406\u201d\u8d5b\u9053\u6b63\u53d8\u5f97\u62e5\u6324\u2014\u2014CodeGPT\u3001Warp\u3001Cline\u7b49\u540c\u8d28\u7ade\u4e89\u5f53\u524d\uff0cVEXI\u53ea\u6709\u201c\u5f00\u6e90+BYOK\u201d\u8fd9\u4e00\u62a4\u57ce\u6cb3\uff0c\u5c1a\u663e\u5355\u8584\u3002\u8bc4\u8bba\u63d0\u51fa\u7684\u201c\u957f\u5468\u671f\u91cd\u6784\u7684\u53ef\u68c0\u89c6\u6027\u201d\u6070\u6070\u66b4\u9732\u4e86\u5176\u6f5c\u5728\u77ed\u677f\uff1a\u771f\u6b63\u7684\u751f\u4ea7\u7ea7\u5f00\u53d1\uff0c\u9700\u8981\u201c\u63d0\u793a-\u63a8\u7406-\u9884\u89c8-\u786e\u8ba4-\u56de\u6eda\u201d\u7684\u95ed\u73af\u53cd\u9988\uff0c\u800c\u4e0d\u4ec5\u4ec5\u662f\u751f\u6210\u4e0e\u8f93\u51fa\u3002\u82e5VEXI\u4e0d\u80fd\u5728\u8fd9\u4e00\u201c\u53ef\u89c6\u5316\u63a7\u5236\u5c42\u201d\u4e0a\u505a\u51fa\u5dee\u5f02\u5316\u2014\u2014\u5982\u63d0\u4f9bdiff\u9884\u89c8\u3001\u4ea4\u4e92\u5f0f\u5206\u6b65\u5ba1\u6279\u3001\u53d8\u66f4\u65e5\u5fd7\u7b49\u2014\u2014\u5b83\u5c31\u53ea\u80fd\u505c\u7559\u5728\u4e00\u4e2a\u201c\u66f4\u7075\u6d3b\u7684\u811a\u672c\u52a9\u624b\u201d\uff0c\u800c\u975e\u771f\u6b63\u7684\u7f16\u7a0b\u4ee3\u7406\u3002\u6b64\u5916\uff0c\u4ec580\u4f59\u7968\u7684\u4f4e\u793e\u533a\u70ed\u5ea6\u3001\u5355\u4e00\u70b9\u8d5e\u7684\u8bc4\u8bba\u533a\u4e5f\u6697\u793a\uff1a\u4ea7\u54c1\u5ba3\u53d1\u6216\u7528\u6237\u57fa\u6570\u5c1a\u5f31\u3002\u672a\u6765\u7684\u7a81\u56f4\u5173\u952e\u4e0d\u53ea\u5728\u6280\u672f\u5b9e\u73b0\uff0c\u66f4\u5728\u80fd\u5426\u901a\u8fc7\u63d2\u4ef6\u3001\u7aef\u5230\u7aefCI\u96c6\u6210\u3001\u5b89\u5168\u6c99\u7bb1\u8986\u76d6\u771f\u5b9e\u4e13\u4e1a\u5f00\u53d1\u6d41\u7a0b\u4e2d\u201c\u4fe1\u4efb\u4e0e\u53ef\u63a7\u201d\u7684\u6838\u5fc3\u75db\u70b9\u3002\u5426\u5219\uff0c\u5b83\u6216\u5c06\u88ab\u66f4\u5feb\u3001\u66f4\u96c6\u6210\u5316\u7684\u66ff\u4ee3\u54c1\u6df9\u6ca1\u3002\n            <\/p>\n<\/p><\/div>\n<div class=\"comments-section\">\n<div class=\"comments-toggle\">\n            <span>\u67e5\u770b\u539f\u59cb\u4fe1\u606f<\/span><br \/>\n            <span class=\"toggle-arrow\">\u25bc<\/span>\n        <\/div>\n<div class=\"comments-container\">\n<div class=\"comment-item\">\n<div class=\"comment-header\">\n                    <span class=\"comment-author\">VEXI<\/span>\n                <\/div>\n<div class=\"comment-content\">VEXI is an open-source AI coding agent built for developers who prefer the terminal. Bring your own API keys, connect OpenAI, Anthropic, and other providers, and accelerate coding, debugging, refactoring, and automation through a lightweight, multilingual, privacy-friendly CLI.<\/div>\n<\/p><\/div>\n<p>            <!-- \u8bc4\u8bba\u5217\u8868 --><\/p>\n<div class=\"comment-item\">\n<div class=\"comment-content\">Hey Product Hunt!<\/p>\n<p>I&#8217;m excited to share VEXI with the community.<\/p>\n<p>As a developer, I found myself constantly switching between different AI tools, browser tabs, and coding environments. Most solutions were either tied to a specific provider, required subscriptions, or pulled developers away from the terminal where they already spend most of their time.<\/p>\n<p>That&#8217;s why I built VEXI.<\/p>\n<p>VEXI is an open-source AI coding agent that runs directly in your terminal. It follows a BYOK (Bring Your Own Key) approach, allowing developers to use their own API keys and choose the AI providers they prefer.<\/p>\n<p>Key features:<\/p>\n<p>\u2022 Open source and community-driven<br \/>\n\u2022 Works directly from the terminal<br \/>\n\u2022 Multi-provider support<br \/>\n\u2022 BYOK, use your own API keys<br \/>\n\u2022 Multilingual support<br \/>\n\u2022 Lightweight and easy to set up<br \/>\n\u2022 Privacy-friendly workflow<\/p>\n<p>My goal is to give developers a flexible, transparent, and provider-agnostic AI coding assistant without locking them into a closed ecosystem.<\/p>\n<p>I&#8217;d love to hear your feedback, suggestions, and feature requests. Every comment helps shape the future of VEXI.<\/p>\n<p>Thanks for checking it out! <\/p>\n<p>GitHub: <a href=\"https:\/\/github.com\/Elomami1976\/vexi\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/github.com\/Elomami1976\/vexi<\/a><br \/>\nWebsite: <a href=\"https:\/\/vexi.pro\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">https:\/\/vexi.pro<\/a><\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<div class=\"comment-item\">\n<div class=\"comment-content\">\n<p>Open-source terminal-first agents are where a lot of real developer workflow will shake out. BYOK + provider flexibility is a good default. What does VEXI do to keep long-running refactors inspectable before changes hit the filesystem?<\/p>\n<\/div>\n<div class=\"comment-actions\">\n<div class=\"comment-vote\">\n                        <span>\u25b2<\/span><br \/>\n                        <span>0<\/span>\n                    <\/div>\n<p>                    <span>\u56de\u590d<\/span>\n                <\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/p><\/div>\n<\/article>\n<\/div>\n<p><!-- \u56fe\u7247\u653e\u5927\u6a21\u6001\u6846 --><\/p>\n<div id=\"imageModal\" class=\"modal\">\n    <span class=\"close\">&times;<\/span><br \/>\n    <img class=\"modal-content\" id=\"modalImage\">\n<\/div>\n<p><script>\n    \/\/ \u83b7\u53d6\u6a21\u6001\u6846\u5143\u7d20\n    const modal = document.getElementById(\"imageModal\");\n    const modalImg = document.getElementById(\"modalImage\");\n    const closeBtn = document.getElementsByClassName(\"close\")[0];<\/p>\n<p>    \/\/ \u68c0\u6d4b\u662f\u5426\u4e3a\u79fb\u52a8\u8bbe\u5907\n    const isMobile = \/iPhone|iPad|iPod|Android\/i.test(navigator.userAgent);<\/p>\n<p>    \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4f18\u5316\n    function addTouchOptimization() {\n        if (isMobile) {\n            \/\/ \u4e3a\u6240\u6709\u53ef\u70b9\u51fb\u5143\u7d20\u6dfb\u52a0\u89e6\u6478\u53cd\u9988\n            const clickableElements = document.querySelectorAll(\n                '.media-content, .close, .video-overlay, .play-icon'\n            );<\/p>\n<p>            clickableElements.forEach(el => {\n                el.style.touchAction = 'manipulation'; \/\/ \u9632\u6b62\u53cc\u51fb\u7f29\u653e\n            });\n        }\n    }<\/p>\n<p>    \/\/ \u4e3a\u6240\u6709\u56fe\u7247\u6dfb\u52a0\u70b9\u51fb\u4e8b\u4ef6\n    const images = document.querySelectorAll(\"img.media-content\");\n    images.forEach(img => {\n        img.onclick = function() {\n            modal.style.display = \"block\";\n            modalImg.src = this.src;\n            \/\/ \u963b\u6b62\u80cc\u666f\u6eda\u52a8\n            document.body.style.overflow = \"hidden\";\n        }<\/p>\n<p>        \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n        if (isMobile) {\n            img.addEventListener('touchstart', function(e) {\n                \/\/ \u9632\u6b62\u89e6\u6478\u4e8b\u4ef6\u89e6\u53d1\u4e0d\u5fc5\u8981\u7684\u884c\u4e3a\n                e.preventDefault();\n                this.click();\n            }, { passive: false });\n        }\n    });<\/p>\n<p>    \/\/ \u4e3a\u89c6\u9891\u6dfb\u52a0\u70b9\u51fb\u4e8b\u4ef6 - \u8df3\u8f6c\u5230\u89c6\u9891URL\n    const videos = document.querySelectorAll(\"video.media-content\");\n    videos.forEach(video => {\n        \/\/ \u70b9\u51fb\u89c6\u9891\u672c\u8eab\u65f6\u8df3\u8f6c\u5230\u89c6\u9891URL\n        video.onclick = function(e) {\n            \/\/ \u68c0\u67e5\u70b9\u51fb\u76ee\u6807\u662f\u5426\u662f\u89c6\u9891\u63a7\u4ef6\u6216\u5176\u5b50\u5143\u7d20\n            let isControlClick = false;\n            let target = e.target;<\/p>\n<p>            \/\/ \u5411\u4e0a\u904d\u5386DOM\uff0c\u68c0\u67e5\u662f\u5426\u70b9\u51fb\u4e86\u63a7\u4ef6\u5143\u7d20\n            while (target && target !== this) {\n                \/\/ \u68c0\u67e5\u662f\u5426\u6709\u63a7\u4ef6\u76f8\u5173\u7684\u7c7b\u540d\u6216\u5c5e\u6027\n                if (target.classList.contains('video-js') || \n                    target.tagName.toLowerCase() === 'button' || \n                    target.tagName.toLowerCase() === 'input' || \n                    target.tagName.toLowerCase() === 'select' ||\n                    target.className.includes('control')) {\n                    isControlClick = true;\n                    break;\n                }\n                target = target.parentElement;\n            }<\/p>\n<p>            \/\/ \u53ea\u6709\u5f53\u70b9\u51fb\u7684\u662f\u89c6\u9891\u672c\u8eab\u800c\u975e\u63a7\u4ef6\u65f6\u624d\u8df3\u8f6c\n            if (!isControlClick && e.target.tagName.toLowerCase() === 'video') {\n                const videoUrl = this.getAttribute('data-video-url') || this.querySelector('source').src;\n                window.open(videoUrl, '_blank');\n            }\n        }<\/p>\n<p>        \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n        if (isMobile) {\n            video.addEventListener('touchstart', function(e) {\n                \/\/ \u68c0\u67e5\u662f\u5426\u70b9\u51fb\u4e86\u63a7\u4ef6\n                let isControlClick = false;\n                let target = e.target;<\/p>\n<p>                while (target && target !== this) {\n                    if (target.tagName.toLowerCase() === 'button' || \n                        target.tagName.toLowerCase() === 'input' || \n                        target.className.includes('control')) {\n                        isControlClick = true;\n                        break;\n                    }\n                    target = target.parentElement;\n                }<\/p>\n<p>                if (!isControlClick) {\n                    e.preventDefault();\n                    const videoUrl = this.getAttribute('data-video-url') || this.querySelector('source').src;\n                    window.open(videoUrl, '_blank');\n                }\n            }, { passive: false });\n        }\n    });<\/p>\n<p>    \/\/ \u4e3a\u89c6\u9891\u906e\u7f69\u6dfb\u52a0\u70b9\u51fb\u4e8b\u4ef6\uff0c\u786e\u4fdd\u70b9\u51fb\u906e\u7f69\u4e5f\u80fd\u8df3\u8f6c\n    const videoOverlays = document.querySelectorAll('.video-overlay');\n    videoOverlays.forEach(overlay => {\n        overlay.onclick = function(e) {\n            \/\/ \u963b\u6b62\u4e8b\u4ef6\u5192\u6ce1\u5230\u89c6\u9891\u5143\u7d20\n            e.stopPropagation();\n            const video = this.parentElement.querySelector('video.media-content');\n            if (video) {\n                const videoUrl = video.getAttribute('data-video-url') || video.querySelector('source').src;\n                window.open(videoUrl, '_blank');\n            }\n        }<\/p>\n<p>        \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n        if (isMobile) {\n            overlay.addEventListener('touchstart', function(e) {\n                e.preventDefault();\n                e.stopPropagation();\n                const video = this.parentElement.querySelector('video.media-content');\n                if (video) {\n                    const videoUrl = video.getAttribute('data-video-url') || video.querySelector('source').src;\n                    window.open(videoUrl, '_blank');\n                }\n            }, { passive: false });\n        }\n    });<\/p>\n<p>    \/\/ \u5173\u95ed\u6a21\u6001\u6846\n    closeBtn.onclick = function() {\n        modal.style.display = \"none\";\n        \/\/ \u6062\u590d\u80cc\u666f\u6eda\u52a8\n        document.body.style.overflow = \"auto\";\n    }<\/p>\n<p>    \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n    if (isMobile) {\n        closeBtn.addEventListener('touchstart', function(e) {\n            e.preventDefault();\n            modal.style.display = \"none\";\n            document.body.style.overflow = \"auto\";\n        }, { passive: false });\n    }<\/p>\n<p>    \/\/ \u70b9\u51fb\u6a21\u6001\u6846\u5916\u90e8\u5173\u95ed\n    window.onclick = function(event) {\n        if (event.target === modal) {\n            modal.style.display = \"none\";\n            document.body.style.overflow = \"auto\";\n        }\n    }<\/p>\n<p>    \/\/ \u4e3a\u79fb\u52a8\u8bbe\u5907\u6dfb\u52a0\u89e6\u6478\u4e8b\u4ef6\u652f\u6301\n    if (isMobile) {\n        modal.addEventListener('touchstart', function(e) {\n            if (e.target === modal) {\n                modal.style.display = \"none\";\n                document.body.style.overflow = \"auto\";\n            }\n        }, { passive: true });\n    }<\/p>\n<p>    \/\/ \u6309ESC\u952e\u5173\u95ed\u6a21\u6001\u6846\n    document.addEventListener('keydown', function(event) {\n        if (event.key === 'Escape' && modal.style.display === 'block') {\n            modal.style.display = 'none';\n            document.body.style.overflow = \"auto\";\n        }\n    });<\/p>\n<p>    \/\/ \u68c0\u67e5\u6bcf\u4e2a\u5a92\u4f53\u753b\u5eca\u4e2d\u662f\u5426\u53ea\u6709\u4e00\u4e2a\u9879\u76ee\uff0c\u5982\u679c\u662f\uff0c\u6dfb\u52a0single-item\u7c7b\n    document.querySelectorAll('.media-gallery').forEach(gallery => {\n        if (gallery.querySelectorAll('.media-item-wrapper').length === 1) {\n            gallery.classList.add('single-item');\n        }\n    });<\/p>\n<p>    \/\/ \u521d\u59cb\u5316\u89e6\u6478\u4f18\u5316\n    addTouchOptimization();<\/p>\n<p>    \/\/ \u7a97\u53e3\u5927\u5c0f\u53d8\u5316\u65f6\u91cd\u65b0\u68c0\u67e5\u753b\u5eca\u72b6\u6001\n    window.addEventListener('resize', function() {\n        document.querySelectorAll('.media-gallery').forEach(gallery => {\n            if (gallery.querySelectorAll('.media-item-wrapper').length === 1) {\n                gallery.classList.add('single-item');\n            } else {\n                gallery.classList.remove('single-item');\n            }\n        });\n    });<\/p>\n<p>    \/\/ --- \u8bc4\u8bba\u533a\u57df\u6298\u53e0\/\u5c55\u5f00\u529f\u80fd ---\n    const commentToggles = document.querySelectorAll('.comments-toggle');<\/p>\n<p>    commentToggles.forEach(toggle => {\n        toggle.addEventListener('click', function() {\n            \/\/ \u5207\u6362\u5f53\u524dtoggle\u7684open\u72b6\u6001\n            this.classList.toggle('open');<\/p>\n<p>            \/\/ \u83b7\u53d6\u5bf9\u5e94\u7684\u8bc4\u8bba\u5bb9\u5668\n            const commentsContainer = this.nextElementSibling;\n            if (commentsContainer && commentsContainer.classList.contains('comments-container')) {\n                commentsContainer.classList.toggle('open');\n            }\n        });\n    });\n<\/script><\/p>\n<p><\/body><br \/>\n<\/html><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Product Hunt \u6bcf\u65e5\u70ed\u699c 2026-06-15 PH\u70ed\u699c | 2026-06-15 #1 Novu  [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"template-clean-canvas.php","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-253","post","type-post","status-publish","format-standard","hentry","category-producthunt"],"_links":{"self":[{"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/posts\/253","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/comments?post=253"}],"version-history":[{"count":0,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/posts\/253\/revisions"}],"wp:attachment":[{"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/media?parent=253"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/categories?post=253"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ph.listeningo.cn\/index.php\/wp-json\/wp\/v2\/tags?post=253"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}