public void restoreFromLocalFile(String confPath) {
        LOGGER.info("restore modules from local file");
        String localModuleConfigPath = confPath + LOCAL_CONFIG_FILE;
        try (Reader reader = new InputStreamReader(
                new FileInputStream(localModuleConfigPath), StandardCharsets.UTF_8)) {
            JsonElement tmpElement = JsonParser.parseReader(reader).getAsJsonObject();
            ConfigResult curConfig = GSON.fromJson(tmpElement.getAsJsonObject(), ConfigResult.class);
            if (curConfig.getModuleList() != null) {
                if (curConfig.getMd5() != null) {
                    currentMd5 = curConfig.getMd5();
                }
                if (curConfig.getVersion() != null) {
                    currentVersion = curConfig.getVersion();
                }
                curConfig.getModuleList().forEach((module) -> {
                    currentModules.put(module.getId(), module);
                });
            } else {
                LOGGER.info("modules in local file invalid");
            }
        } catch (FileNotFoundException e) {
            LOGGER.info("local module json file {} not found", localModuleConfigPath);
        } catch (Exception ioe) {
            LOGGER.error("error restoredFromLocalFile {}", localModuleConfigPath, ioe);
        }
    }
Thread for core thread.

@return runnable profile.
inlong-agent/agent-installer/src/main/java/org/apache/inlong/agent/installer/ModuleManager.java