Note before install:
For my model, it came with Intel Wireless-AC 3165 module, which is not support by OS X. You need to use other NGFF model based wireless card if you want to get WIFI work.

What works?

Full QE/CI for Intel HD620 (NVIDIA GPU will be disabled.)

SATA info

WIFI & Bluetooth (using DW1560)

Battery info

Sleep

Laptop display

HDMI video output

Audio works with speaker/HDMI/3.5mm jack

Keyboard / Trackpad / USB mouse

Dual boot with Win10 (but in separate disk.)

Brightness (with key control)

CPU Power Management

Heat sink fan (here means fan will not always stayed in low speed or no spin.)

Camera

Existing Issue:

Film will get glitches if play DRM film from iTunes.

Trackpad may disappeared sometimes when boot.

BIOS settings:
You can follow cagalindo's guide to setup BIOS.
Basically, you need to disable Intel VT-d, Secure Boot, and USB secure level.
Notice that sometimes BIOS will not show up your install USB in boot menu. To make USB boot, you can add USB EFI location manually in BIOS/Boot options.
(Note: Please plug your USB stick on the same port since you setup your EFI location in boot options.)

Preparing Kexts:
Below is the list that the kexts you should prepare for your installation.

Code:

Kexts needed to copy into CLOVER/kexts/others:
FakeSMC
SATA-100-series-unsupported
RealtekRTL8111
USBInjectAll
VoodooPS2Controller
Lilu
IntelGraphicsDVMTFixup
VoodooI2C (Optional, only works if using patched DSDT.)
VoodooI2CHID (Optional, only works if using patched DSDT.)

Install OS X:
For config.plist, note that you need to check these options or you will get error during OS X install.
config.plist/ACPI/DSDT/Fixes/FixHeaders=True
config.plist/ACPI/AutoMerge=True
config.plist/KernelAndKextPatches/DellSMBIOSPatch=True

Note that if you're going to install OS X on SSD, you may want to avoid APFS conversion during installation.
Please follow this guide to avoid that.

Also you may need SSDT-DiscreteSpoof.aml to avoid dual GPU issue.
You can follow the guide to generate one.

After OS X installation, remember to install CLOVER into your Mac EFI first.
Recommend select RC scripts (include mDSNResponser script) together during CLOVER installation to avoid system wake issue.
Copy kexts, UEFI files, and AML files from USB to disk, then test first to check it can boot from disk or not.

Below is post-installation, will need to install kexts.
Note that you have to install kexts in to /Library/Extensions, I recommend use KextBeast to install them.
All kexts or install tools can be found from ReHabMan's projects and this forum.
(Note: Kexts which put in EFI also need to install together. And DO NOT delete them after installation.
Or it would be a problem when doing OS X update in the future.)

Also to disable NVIDIA GPU, you can follow this guide to disable it.
(Note: NVIDIA GPU will not totally disable if you just use SSDT-discreteSpoof)
(Note2: The guide also included how to patch your own DSDT, I suggest you patch your own DSDT from this guide.)

Update(20180803):
You can try setting higher DVMT pre-allocate size by hot patch the BIOS in here
IntelGraphicsDVMTFixup will not needed if already patched BIOS.But note that patching BIOS is very dangerous, use at your own risk!

Audio:
For ALC256, just install AppleALC.kext, and set layout-id to 13. (Or 56 if use a latest AppleALC.)
For HDMI audio, already set in my config.plist, you can follow it
For 3.5mm audio jack, please follow here to get it work.

No needed to edit CodecCommander, just install it and put SSDT-ALC256.aml into ACPI/patched in CLOVER.

You can follow my config.plist to set layout-id and hda-gfx (for HDMI audio)

Display:
Here is a issue between HDMI display and laptop display. The laptop display may turn blank when you plug HDMI cable.
To fix this issue, you have to insert modified EDID for your laptop display. You can follow the steps from here.
(Attention! DO NOT use EDID file inside the link, please make one for yourself!)

Note: For #5 in the link of steps, you have another 2 options to place the patched EDID.

Brightness:
Follow the guide to build SSDT-PNLF.aml, then put into CLOVER/ACPI/patched
(Note: Idk why I got worked just use SSDT-PNLF and kext patch in config.plist. I didn't install AppleBacklightControl.kext)

For brightness key fix, follow the guide.
(Hint: The patch you need is Windows 10 _OSI patch and BRT6 patch inside the guide.)

And there're few patches need to set into config.plist, you can follow my file.
(Only BT needed.)

Power Management:
To do this, you have two options:

Generate SSDT.aml by using ssdtPRGen.sh

Set config.plist/ACPI/SSDT/Generate/PluginType=true

Choose one to make it work.
And set config.plist/CPU/Type=0x0705 (CPU Type for i7)
(Note: For option 2, only works if you're using a latest CLOVER by RehabMan.)

Sleep:
This laptop has USB wake issue which may cause laptop wake immediately when laptop went sleeps in 3~4 sec.
You can patch the DSDT from RehabMan's repo in MaciASL.
(Note: I use 0x6D Skylake patch to fix issue.)

Trackpad: (20180501 update)
In this new DSDT release has included patch that can make trackpad works as I2C mode. That means more gestures can use and smoother than PS2 mode.

To make it work, please follow the steps below:

First, we have to delete or using patch to avoid AppleIntelLpssI2C* occupied device when boot.

For deletion, remove AppleIntelLpssI2C*.kext in /S/L/E (may have to delete AppleHPM, too.)

Choose one exclusively, I recommend using patch method.
Note that for deletion method, please backup the kexts first before remove them.

Then install VoodooI2C & VoodooI2CHID into /L/E (kexts can be found here.), and reboot.

For how to patch DSDT to make trackpad work, please follow author's guide and additional works.
Also even it worked, few gestures will be different to original OS X. Some gestures are hard-coded and mapping to hotkeys.
To know how to configure, please follow this guide.

Note: Sometimes trackpad would not work when get into OS X. Please reboot again may turn it back.

I think it's almost done for here.
Really appreciate to people who help me to solve some issues.
Thanks to RehabMan & cagalindo again, also thanks to @feartech .

Last time I suggest put 5 kexts into CLOVER/kexts/Other, but I found issue when I got Supplemental Update in these days.
So additional work you need to do for updater in the future.

Put Lilu and IntelGraphicsDVMTFixup into CLOVER/kexts/Other.

For why didn't use kext patch because you may going to use different ig-platform-id, you have to find a patch that fit your platform id setting. So using IntelGraphicsDVMTFixup is more convenient than patching.

Also note that the internal display will turn blank when boot into installer if plugged HDMI, and modified DisplayMergeNub is not work if put into CLOVER/kexts/Other.
So make sure HDMI is not plug before enter to installer.

Note before install:
For my model, it came with Intel Wireless-AC 3165 module, which is not supported by OS X. You need to use other NGFF model based wireless card if you want to get WIFI work.

What works?

Full QE/CI for Intel HD620 (NVIDIA GPU will be disabled.)

SATA info

WIFI & Bluetooth (using DW1560)

Battery info

Sleep

Laptop display

HDMI video output

Audio works with speaker/HDMI/3.5mm jack

Keyboard / Trackpad / USB mouse

Dual boot with Win10

Brightness (with key control)

CPU Power Management

Heat sink fan (here means fan will not always stayed in low speed or no spin.)

Camera

Existing Issue:

Film will get glitches if play DRM film from iTunes.

BIOS settings:
You can follow cagalindo's guide to setup BIOS.
Basically, you need to disable Intel VT-d, Secure Boot, and USB secure level.
Notice that sometimes BIOS will not show up your install USB in boot menu. To make USB boot, you can add USB EFI location manually in BIOS/Boot options.
(Note: Please plug your USB stick on the same port since you setup your EFI location in boot options.)

Preparing Kexts:
Below is the list that the kexts you should prepare for your installation.

Install OS X:
For config.plist, note that you need to check these options or you will get error during OS X install.
config.plist/ACPI/DSDT/Fixes/FixHeaders=True
config.plist/ACPI/AutoMerge=True
config.plist/KernelAndKextPatches/DellSMBIOSPatch=True

Also you may need SSDT-DiscreteSpoof.aml to avoid dual GPU issue.
You can follow the guide to generate one.

After OS X installation, remember to install CLOVER into your Mac EFI.
Copy kexts, UEFI files, and AML files from USB to disk, then test first to check it can boot from disk or not.

Below is post-installation, will need to install kexts.
Note that you have to install kexts in to /Library/Extensions, I recommend use KextBeast to install them.
All kexts or install tools can be found from ReHabMan's projects and this forum.
(Note: Kexts which put in EFI also need to install together. And DO NOT delete them after installation.
Or it would be a problem when doing OS X update in the future.)

Also to disable NVIDIA GPU, you can follow this guide to disable it.
(Note: NVIDIA GPU will not totally disable if you just use SSDT-discreteSpoof)
(Note2: The guide also included how to patch your own DSDT, I suggest you patch your own DSDT from this guide.)

Audio:
For ALC256, just install AppleALC.kext, and set layout-id to 13.
For HDMI audio, already set in my config.plist, you can follow it
For 3.5mm audio jack, install CodecCommander, then use ALCPlugFix to get it work.

You can follow my config.plist to set layout-id and hda-gfx (for HDMI audio)

Display:
Here is a issue between HDMI display and laptop display. The laptop display may turn blank when you plug HDMI cable.
To fix this issue, you have to insert modified EDID for your laptop display. You can follow the steps from here (#13)

Brightness:
Follow the guide to build SSDT-PNLF.aml, then put into CLOVER/ACPI/patched
(Note: Idk why I got worked just use SSDT-PNLF and kext patch in config.plist. I didn't install AppleBacklightControl.kext)

And there're few patches need to set into config.plist, you can follow my file.

Power Management:
To do this, you have two options:

Generate SSDT.aml by using ssdtPRGen.sh

Set config.plist/ACPI/SSDT/Generate/PluginType=true

Choose one to make it work.
And set config.plist/CPU/Type=0x0705 (CPU Type for i7)
(Note: For option 2, only works if you're using a latest CLOVER.)

Sleep:
This laptop have USB wake issue which may cause laptop wake immediately when laptop went sleeps in 3~4 sec.
You can patch the DSDT from RehabMan's repo in MaciASL.
(Note: I use 0x6D Skylake patch to fix issue.)

I think it's almost done for here.
Really appreciate to people who help me to solve some issues.
Thanks to RehabMan & cagalindo again, also thanks to @feartech .

Please check the link in "Graphics" part, the word "this guide" is actually a hyperlink.

For _OFF method, no need to fix because the origin SSDT already fixed.
And no issue about sleep/wake on GPU, so _WAK/_PTS no needed either.
Just need to patch _INI method for SSDT and _REG patch for DSDT.

And remember to change device path to fit your DSDT/SSDT before apply them.

Please check the link in "Graphics" part, the word "this guide" is actually a hyperlink.

For _OFF method, no need to fix because the origin SSDT has already fixed.
And no issue about sleep/wake on GPU, so _WAK/_PTS no needed either.
Just need to patch _INI method for SSDT and _REG patch for DSDT.

And remember to change device path to fit your DSDT/SSDT before apply them.