플러그인 개발 및 구현
AI 에이전트로 플러그인 구축
아래의 요구 사항 자리 표시자를 교체한 후 코딩 에이전트에 전체 지침을 전달하세요.
https://raw.githubusercontent.com/ccseer/Seer-Plugins/refs/heads/master/plugin_development_guide.md 에 있는 Seer 플러그인 개발 가이드를 읽고 따르세요. 아키텍처, plugin.json, 구현, 검증 및 패키징에 대한 단일 진실 출처(Single Source of Truth)로 취급하세요. 가이드를 사용할 수 없는 경우 계속하기 전에 중단하고 보고하세요.
작업을 수행하기 전에 아래의 Requirement(요구 사항)를 검사하세요. 누락되었거나 변경되지 않은 자리 표시자 텍스트이거나 구현하기에 너무 모호한 경우 한 가지 확인 질문을 하고 기다리세요. 누락된 요구 사항을 추측하지 마세요.
명확해지면 Convert 또는 DLL을 선택하고 선택 이유를 간략히 설명한 후 현재 작업 영역에 완전하고 설치 가능한 플러그인을 구현하세요. Seer 자체를 수정하거나 계획 또는 코드 스니펫에서 멈추지 마세요.
가이드의 모든 해당 검증 단계를 따르고 실제 결과를 보고하세요. 가능한 경우 앱 내 Seer 미리 보기 테스트를 실행하고, 그렇지 않은 경우 런타임 검증이 수행되지 않았음을 명시적으로 밝히세요.
Requirement: [이 자리 표시자를 플러그인 요청으로 교체하세요.]
변환 유형 플러그인
Seer는 변환 유형 플러그인을 외부 실행 프로그램으로 취급합니다. 파일이 트리거되면 Seer는 구성된 프로그램을 실행하고 자리 표시자를 통해 파일 경로를 전달합니다.
자리 표시자 변수
${input_file}: 소스 파일의 절대 경로.${output_file}: 플러그인이 처리된 출력을 저장해야 하는 기본 출력 파일 경로(원하는 확장자를 추가합니다. 예:${output_file}.json).${use_backslash}: 경로 구분 기호를 Windows 네이티브 역슬래시(\)로 형식화하는 선택적 플래그.${seer_dir}:Seer.exe가 위치한 디렉터리 경로.${seer_exe}:Seer.exe의 절대 경로.${7z}: Seer와 함께 제공되는7z.exe의 절대 경로.
실행 워크플로
- 트리거: 사용자가 파일에서
스페이스바를 누릅니다. - 해결: Seer는 파일 확장자와 연결된 플러그인을 식별합니다.
- 실행: Seer는 실행 파일을 실행합니다(예:
ApkMetaInfo2Json.exe "${input_file}" "${output_file}.json"). - 표시: 프로세스가 종료되면 Seer는
${output_file}.*와 일치하는 생성된 파일을 읽고 출력 확장자에 해당하는 내부 뷰어를 사용하여 렌더링합니다.
지원되는 실행 파일 및 스크립트 유형
변환 유형 플러그인은 CLI를 통해 입력/출력을 처리할 수 있는 모든 실행 파일일 수 있습니다.
- 스크립트:
- CMD 스크립트: cmd_rename
- BAT 스크립트: bat_epub
- PowerShell 스크립트:
.ps1(powershell.exe를 통해 기본 지원)
- 타사 도구:
dll_lib_exports: Windows 시스템 유틸리티- ImageMagick
- exiftool
- 사용자 지정 바이너리:
임시 파일 관리
플러그인은 종종 중간 파일을 생성합니다.
- 자동 정리: Seer는 기본적으로 21일이 지난 임시 파일을 자동으로 정리합니다.
- 강제 삭제: 명령 매개변수에
${no_cache}를 추가하면 Seer가 변환 캐시를 우회하고 자동 삭제 디렉터리(autodel/)에 임시 출력을 저장하도록 지시합니다. 이 디렉터리는 Seer 종료 시 자동으로 비워집니다.
DLL 유형 플러그인
고성능 또는 심층 통합을 위해 Seer는 C++/Qt로 작성되어 동적 라이브러리로 컴파일된 DLL 기반 플러그인을 지원합니다.
참조 프로젝트
플러그인 인터페이스 구현에 대해서는 다음 공식 리포지토리를 참조하세요.
| 프로젝트 | 목적 |
|---|---|
| F3DViewer | 3D 파일 미리 보기 |
| OfficeViewer | Office 문서 |
| FontViewer | 폰트 렌더링 |
| JsonTreeViewer | JSON 구조 보기 |
| Collections | 전체 |