
Qt Widgets 데스크톱 UI로, pycdc/pycdas를 사용하여 파이썬 바이트코드를 탐색하고, 네이티브 디컴파일을 검사하며, 지원되지 않는 코드 객체에 대해 AI fallback을 사용합니다.
pycdc / pycdas로 파이썬 바이트코드를 탐색하고, 네이티브 디컴파일 결과를 검사하며, Pyarmor oneshot 출력을 가져오고, 지원되지 않는 코드 객체를 AI 폴백으로 재시도하는 Qt Widgets 데스크톱 UI입니다.
이 앱은 Windows 및 Linux 데스크톱 환경을 모두 지원합니다.


.pyc / .pyo 파일을 직접 엽니다.병합네이티브AICtrl+R을 사용하여 현재 선택된 노드를 AI로 재시도합니다.앱은 기본적으로 전체 .pyc를 보내지 않습니다.
현재 선택된 코드 객체를 기반으로 프롬프트를 구성하며, 다음을 포함합니다:
이렇게 하면 폴백 재구성이 전체 파일 대신 선택된 노드에 집중됩니다.
앱은 현재 애플리케이션 바이너리 옆에 있는 로컬 실행 파일을 선호하며, pycdc-studio 애플리케이션 바이너리와 동일한 디렉토리에서 다음을 찾습니다:
pycdc.exepycdcpycdas.exepycdas환경 변수로 재정의할 수 있습니다:
PYCDC_STUDIO_PYCDCPYCDC_STUDIO_PYCDAS앱은 Lil-House/Pyarmor-Static-Unpack-1shot에 위임하여 Pyarmor로 보호된 프로젝트를 가져올 수 있습니다.
현재 통합 워크플로:
oneshot/shot.py를 실행합니다.pyarmor-1shot이 .1shot.das와 .1shot.cdc.py를 생성하도록 합니다.릴리스 패키지는 Pyarmor oneshot 도구 체인과 필요한 Python 패키지 종속성을 자동으로 번들로 제공할 것으로 예상됩니다.
로컬 개발의 경우, 현재 코드는 애플리케이션 패키지 옆에 있는 번들 파일을 먼저 찾고, 다음 위치의 로컬 클론도 지원합니다:
external/Pyarmor-Static-Unpack-1shot/oneshot/shot.py그리고 pyarmor-1shot / pyarmor-1shot.exe가 shot.py와 동일한 디렉토리에 있어야 합니다.
또한 shot.py를 실행할 수 있는 Python 환경(pycryptodome 포함)이 필요합니다.
레이아웃이 다른 경우 환경 변수로 재정의할 수 있습니다:
PYCDC_STUDIO_PYARMOR_PYTHONPYCDC_STUDIO_PYARMOR_SHOTPYCDC_STUDIO_PYARMOR_PYTHONPATHPYCDC_STUDIO_PYARMOR_OUTPUT_ROOT예시:
git clone https://github.com/Lil-House/Pyarmor-Static-Unpack-1shot external/Pyarmor-Static-Unpack-1shot
cmake -S external/Pyarmor-Static-Unpack-1shot/pycdc -B external/Pyarmor-Static-Unpack-1shot/build
cmake --build external/Pyarmor-Static-Unpack-1shot/build --config Release
cmake --install external/Pyarmor-Static-Unpack-1shot/build --config Release
python -m pip install pycryptodome
pycdc-studio 실행파일 -> Pyarmor 프로젝트 가져오기... 열기pyarmor_runtime이 포함된 루트 디렉토리 선택.1shot.* 파일이 작업 공간으로 가져올 때까지 기다리기참고:
PYCDC_STUDIO_PYARMOR_OUTPUT_ROOT가 설정되지 않은 경우 임시 출력 디렉토리를 사용합니다.AI 폴백을 사용하기 전에 설정을 열고 최소한 다음을 구성하십시오:
기본 URLAPI 키모델현재 클라이언트는 OpenAI 호환 API 엔드포인트를 예상합니다.
설정 대화 상자는 QSettings로 제공자 구성을 저장하며, 필드가 비어 있으면 환경 변수로 폴백합니다.
지원되는 환경 변수:
PYCDC_STUDIO_AI_BASE_URLPYCDC_STUDIO_AI_API_KEYPYCDC_STUDIO_AI_MODELPYCDC_STUDIO_AI_SYSTEM_PROMPT요구 사항:
예시:
cmake -S . -B build
cmake --build build
pycdc-studio 실행.pyc / .pyo 파일을 열거나 폴더를 창으로 드래그파일 -> Pyarmor 프로젝트 가져오기...를 열어 Pyarmor로 보호된 프로젝트 가져오기설정을 열고 AI 모델을 구성 (AI 폴백을 사용하려는 경우)AI로 재시도 사용더 긴 테스트 케이스는 test/ 디렉토리에 포함되어 있습니다:
workflow_orchestrator.pyasync_batch_runner.pyplugin_config_resolver.py저장소는 소스 샘플만 추적합니다.
드래그 앤 드롭 테스트를 위한 로컬 .pyc 파일을 생성하려면:
python test/compile_test_samples.py
해당 스크립트는 컴파일된 바이트코드를 test/__pycache__/에 기록합니다.
이 프로젝트는 아직 실험 단계입니다.
현재 병합 뷰는 정직한 혼합 문서입니다:
아직 전체 인라인 소스 병합기는 아닙니다.
이 프로젝트는 pycdc / pycdas와 통합되며, 해당 업스트림 프로젝트는 GPL-3.0에 따라 라이선스가 부여됩니다.
pycdc: GPL-3.0pycdc / pycdas를 번들로 제공하는 릴리스 패키지는 GPL-3.0 고지를 포함해야 합니다.pycdc 저장소와 커밋을 THIRD_PARTY_NOTICES.txt에 기록합니다.전체 라이선스 세부 사항은 업스트림 프로젝트를 참조하십시오: